NodeShape
target class: Person
target class: Parliamentarian
target class: membroGoverno
target class: Guest
property:
  path: name
  datatype: string
  max count: 1
  message: A Person must have at most one name and the name must be a xsd:string
property:
  path: birthday
  datatype: date
  max count: 1
  message: A Person must at most one birthday and the birthday must be a xsd:date
property:
  path: gender
  datatype: string
  max count: 1
  message: A Person must at most one gender and the gender must be a xsd:string
property:
  path: jobTitle
  datatype: string
  max count: 1
  message: A Person must at most one job title and the job title must be a xsd:string

NodeShape
target class: Parliamentarian
property:
  path: identifier
  min count: 1
  max count: 1
  datatype: string
  message: A parliamentarian must have one and only one identifier and the identifier must be xsd:string
property:
  path: belongsToLegislature
  min count: 1
  class: legislatura
  message: A parliamentarian must belong to at least one legislature
property:
  path: rif mandatoCamera
  min count: 1
  class: mandatoCamera
  message: A parliamentarian must have served in at least one mandate
property:
  path: hasHabilitation
  class: Habilitation
  message: A parliamentarian habilitation must be of the class polis-bio:Habilitation
property:
  path: award
  class: Award
  message: A parliamentarian award must be of the class dbo:Award
property:
  path: hasTitle
  class: Title
  message: A parliamentarian title must be of the class polis-bio:Title
property:
  path: authorOf
  class: Document
  message: A parliamentarian publications must be of the class bibo:Document
property:
  path: hasRole
  class: Role
  message: A parliamentarian role must be of the class polis-bio:Role
property:
  path: hasMembership
  class: Membership
  message: A parliamentarian membership must be of the class polis-core:Membership
property:
  path: didYouthParliamentActivity
  class: YouthParliamentActivity
  message: A parliamentarian youth parliament activity must be of the class polis-mpact:YouthParliamentActivity
property:
  path: didRequisition
  or:
    class: richiestaParere
  or:
    class: Request
  or:
    class: Inquiry
  message: A parliamentarian requisition must be of the class ocd:richiestaParere or polis-mpact:Request or polis-mpact:Inquiry
property:
  path: didCommissionActivity
  class: CommissionActivity
  message: A parliamentarian commission activity must be of the class polis-mpact:CommissionActivity
property:
  path: didParliamentaryActivity
  class: ParliamentaryActivity
  message: A parliamentarian parliamentary activity must be of the class polis-mpact:ParliamentaryActivity

NodeShape
target class: membroGoverno
propery:
  path: duty
  datatype: string
  message: A member of government duty must be of the type xsd:string
property:
  path: holdsDuty
  or:
    class: Post
  or:
    class: PAR
  or:
    class: VicePAR
  or:
    class: Secretary
  or:
    class: ViceSecretary
  message: A member of government held duty must be of the class org:Post
property:
  path: belongsToGovernment
  min count: 1
  max count: 1
  class: governo
  message: A member of government must belong to one and only one government

NodeShape
target class: Guest
property:
  path: honour
  max count: 1
  datatype: boolean
  message: A guest must at most one boolean declaration on whether it is a guest of honour
property:
  path: country
  max count: 1
  class: Country
  message: A guest must at most one country of origin
propery:
  path: duty
  datatype: string
  message: A guest duty must be of the type xsd:string
property:
  path: holdsDuty
  or:
    class: Post
  or:
    class: PAR
  or:
    class: VicePAR
  or:
    class: Secretary
  or:
    class: ViceSecretary
  message: A guest held duty must be of the class org:Post

NodeShape
target class: mandatoCamera
property:
  path: identifier
  max count: 1
  datatype: string
  message: A mandate must have at most one identifier and the identifier must be xsd:string
property:
  path: parliamentaryName
  min count: 1
  datatype: string
  message: A mandate must have at least one parliamentary name and the parliamentary name must be xsd:string
property:
  path: belongsToLegislature
  min count: 1
  max count: 1
  class: legislatura
  message: A mandate must belong to one and only one legislature
property:
  path: hasMembership
  min count: 1
  class: Membership
  message: A mandate must have at least one membership
property:
  path: tipoProclamazione
  min count: 1
  or:
    class: proclamazione
  or:
    class: Withdrawal
  or:
    class: Incumbent
  or:
    class: PermanentIncumbent
  or:
    class: TemporaryIncumbent
  or:
    class: Deceased
  or:
    class: Disqualified
  or:
    class: LossOfMandate
  or:
    class: Resigned
  or:
    class: Alternate
  or:
    class: Suspended
  message: A mandate must be in at least one situation
property:
  path: inConstituency
  max count: 1
  class: Constituency
  message: A mandate must have at most one constituency
property:
  path: holdsDuty
  or:
    class: Post
  or:
    class: PAR
  or:
    class: VicePAR
  or:
    class: Secretary
  or:
    class: ViceSecretary
  message: A mandate with a duty must be of the type org:Post

NodeShape
target class: organo
target class: Commission
target class: WorkingGroup
target class: ARWorkingGroup
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: An organo must have an identifier and the identifier must be xsd:string
property:
  path: description
  datatype: string
  max count: 1
  message: An organo must have at most one description and the description must be xsd:string
property:
  path: name
  datatype: string
  max count: 1
  message: An organo must have at most one name and the name must be xsd:string
property:
  path: acronym
  datatype: string
  max count: 1
  message: An organo must have at most one acronym and the acronym must be xsd:string
property:
  path: belongsToLegislature
  class: legislatura
  min count: 1
  max count: 1
  message: An organo must belong to one and only one legislature

NodeShape
target class: Commission
property:
  path: number
  datatype: nonNegativeInteger
  max count: 1
  message: A commission must at most one number and the number must be xsd:nonNegativeInteger
property:
  path: isPublishedInDAR
  class: DARPublication
  message: A Commission publication in the DAR must be of the class polis-ini:DARPublication
property:
  path: isSubCommissionOf
  class: Commission
  message: A Commission must be a subcommission of a Commission
property:
  path: hasSubCommission
  class: Commission
  message: A Commission must have a subcommission of class polis-core:Commission

NodeShape
target class: proclamazione
target class: Withdrawal
target class: Incumbent
target class: PermanentIncumbent
target class: TemporaryIncumbent
target class: Deceased
target class: Disqualified
target class: LossOfMandate
target class: Resigned
target class: Alternate
target class: Suspended
property:
  path: date
  max count: 1
  message: A Situation must have at most one date

NodeShape
target class: Post
target class: PAR
target class: VicePAR
target class: Secreatary
target class: ViceSecretary
property:
  path: date
  max count: 1
  message: A Duty must have at most one date

NodeShape
target class: Membership
property:
  path: date
  max count: 1
  message: A Membership must have at most one date
property:
  path: isMemberOf
  max count: 1
  message: A Membership must have at most one isMemberOf property
property:
  path: hasRole
  class: Role
  max count: 1
  message: A Membership must have at most one Role and it must be of the type polis-bio:Role

NodeShape
target class: legislatura
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A legislatura must have one identifier and it must be of the type xsd:string
property:
  path: date
  min count: 1
  max count: 1
  message: A legislatura must have one date
property:
  path: number
  datatype: nonNegativeInteger
  min count: 1
  max count: 1
  message: A legislatura must have one and only one number and the number must be xsd:nonNegativeInteger

NodeShape
target class: sessioneLegislatura
property:
  path: number
  datatype: nonNegativeInteger
  max count: 1
  message: A sessioneLegislatura session must at most have one number and the number must be of the type xsd:nonNegativeInteger
property:
  path: date
  min count: 1
  max count: 1
  message: A sessioneLegislatura must have one and only one date
property:
  path: belongsToLegislature
  min count: 1
  max count: 1
  class: legislatura
  message: A sessioneLegislatura must belong to one and only one legislatura

NodeShape
target class: Party
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: A party must have at most one and only one name and the name must be a xsd:string
property:
  path: acronym
  datatype: string
  min count: 1
  max count: 1
  message: A party must have one and only one acronym and the acronym must be xsd:string

NodeShape
target class: ParliamentaryGroup
property:
  path: date
  max count: 1
  message: A parliamentary group must have at most one date
property:
  path: isOfParty
  class: Party
  min count: 1
  max count: 1
  message: A parliamentary group must be of one and only one party
property:
  path: belongsToLegislature
  min count: 1
  max count: 1
  class: legislatura
  message: A parliamentary group must belong to one and only one legislature

NodeShape
target class: governo
property:
  path: number
  datatype: nonNegativeInteger
  max count: 1
  message: A governo must have at most one number and the number must be xsd:nonNegativeInteger

NodeShape
target class: ConstituencyArea
property:
  path: identifier
  min count: 1
  max count: 1
  datatype: string
  message: A constituency must have one and only one identifier and the identifier must be xsd:string
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: A constituency must have exactly one name and the name must be a xsd:string

NodeShape
target class: Initiative
target class: ConstitutionalRevisionProject
target class: DeliberationProject
target class: LawProject
target class: LawProposal
target class: ParliamentaryAppreciation
target class: ParliamentaryInquiry
target class: PopularReferendumInitiative
target class: Ratification
target class: ResolutionProject
target class: ResolutionProposal
target class: RulesOfProcedureProject
property:
  path: identifier
  min count: 1
  max count: 1
  datatype: string
  message: An initiative must have one and only one identifier and the identifier must be xsd:string
property:
  path: title
  min count: 1
  max count: 1
  datatype: string
  message: An initiative must have one and exactly one title and the title must be xsd:string
property:
  path: number
  datatype: nonNegativeInteger
  min count: 1
  max count: 1
  message: An initiative must one and only one number and the number must be xsd:nonNegativeInteger
property:
  path: textSubstitutionDetails
  datatype: string
  max count: 1
  message: An initiative must have at most one text substitution detail and it must be xsd:string
property:
  path: belongsToLegislature
  min count: 1
  max count: 1
  class: legislatura
  message: An initiative must belong to one and only one legislature
property:
  path: belongsToLegislativeSession
  min count: 1
  max count: 1
  class: sessioneLegislatura
  message: An initiative must belong to one and only one legislaturive session
property:
  path: hasAuthor
  class: Parliamentarian
  message: An initiative author must be of the class m4s:Parliamentarian
property:
  path: hasProponent
  or:
    class: ParliamentaryGroup
  or:
    class: Parliamentarian
  or:
    class: governo
  or:
    class: Commission
  or:
    class: RegionalLegislativeAssembly
  or:
    class: CitizenGroup
  message: An initiative proponent must be a polis-core:ParliamentaryGroup, m4s:Parliamentarian, ocd:governo, polis-core:Commission, polis-ini:RegionalLegislativeAssembly or polis-ini:CitizenGroup
property:
  path: hasEvent
  class: Event
  message: An initiative event must be of the class polis-ini:Event
property:
  path: hasAnnex
  class: Document
  message: An initiative annex must be of the class bibo:Document
property:
  path: grewOutOf
  or:
    class: Initiative
  or:
    class: EuropeanInitiative
  or:
    class: ConstitutionalRevisionProject
  or:
    class: DeliberationProject
  or:
    class: LawProject
  or:
    class: LawProposal
  or:
    class: ParliamentaryAppreciation
  or:
    class: ParliamentaryInquiry
  or:
    class: PopularReferendumInitiative
  or:
    class: Ratification
  or:
    class: ResolutionProject
  or:
    class: ResolutionProposal
  or:
    class: RulesOfProcedureProject
  message: An initiative must grow out of a polis-ini:Initiative or a polis-ini:EuropeanInitiative
property:
  path: ledTo
  or:
    class: Initiative
  or:
    class: ConstitutionalRevisionProject
  or:
    class: DeliberationProject
  or:
    class: LawProject
  or:
    class: LawProposal
  or:
    class: ParliamentaryAppreciation
  or:
    class: ParliamentaryInquiry
  or:
    class: PopularReferendumInitiative
  or:
    class: Ratification
  or:
    class: ResolutionProject
  or:
    class: ResolutionProposal
  or:
    class: RulesOfProcedureProject
  message: An initiative must lead to initiatives of the class polis-ini:Initiative
property:
  path: receivedChangeProposal
  class: ChangeProposal
  message: An initiative received change proposal must be of the class polis-ini:ChangeProposal
property:
  path: hasRelatedPetition
  class: Petition
  message: An initiative related petition must be of the class polis-ini:Petition
property:
  path: hasContent
  class: Document
  max count: 1
  message: An initiative must have at most one content document and the class of the document must be bibo:Document

NodeShape
target class: EuropeanInitiative
property:
  path: url
  datatype: string
  min count: 1
  max count: 1
  message: An european initiative must have one and only one url and the type must be xsd:string

NodeShape
target class: RegionalLegislativeAssembly
property:
  path: hasPlace
  class: Place
  max count: 1
  message: A regional legislative assembly must have at most one place of the class sem:Place

NodeShape
target class: ChangeProposal
property:
  path: identifier
  min count: 1
  max count: 1
  datatype: string
  message: A change proposal must have one and only one identifier and the identifier must be xsd:string
property:
  path: changeProposalType
  datatype: string
  max count: 1
  message: A change proposal must have at most one change proposal type and it must be xsd:string
property:
  path: proponent
  datatype: string
  message: A change proposal proponent must be of the type xsd:string
property:
  path: isPublishedInDAR
  class: DARPublication
  message: A change proposal publication in the DAR must be of the class polis-ini:DARPublication
property:
  path: isProposedBy
  or:
    class: Parliamentarian
  or:
    class: ParliamentaryGroup
  shacl#: A change proposal can only be proposed by m4s:Parliamentarian or polis-core:ParliamentaryGroup

NodeShape
target class: DARPublication
target class: DARSeries1
target class: DARSeries2
target class: DARSeparata
target class: DARSeries2A
target class: DARSeries2B
target class: DARSeries2C
target class: DARSeries2D
target class: DARSeries2E
target class: DARSeries1A
target class: DARSeries2CRC
target class: DARSeries2CGOPOE
target class: DARSeries2SCOE
target class: DARSeries2CCEI
target class: DARSeries2SOE
property:
  path: number
  datatype: nonNegativeInteger
  min count: 1
  max count: 1
  message: A DAR publication must one and only one number and the number must be xsd:nonNegativeInteger
property:
  path: code
  datatype: string
  min count: 1
  max count: 1
  message: A DAR publication must have one and only one code and the code must be xsd:string
property:
  path: date
  datatype: date
  min count: 1
  max count: 1
  message: A DAR publication must have one and only one date and it must be of the type xsd:date
property:
  path: pagination
  datatype: string
  min count: 1
  max count: 1
  message: A DAR publication must have one and only one pagination and it must be of the type xsd:string
property:
  path: pagesIdentifier
  datatype: string
  min count: 1
  max count: 1
  message: A DAR publication must have one and only one pages' identifier and it must be of the type xsd:string
property:
  path: url
  datatype: string
  min count: 1
  max count: 1
  message: A DAR publication must have one and only one url and it must be of the type xsd:string
property:
  path: publicationSupplement
  datatype: string
  max count: 1
  message: A DAR publication must have at most one supplement and it must be of the type xsd:string
property:
  path: publicationSupplementFinalPage
  datatype: string
  max count: 1
  message: A DAR publication must have at most one supplement final page and it must be of the type xsd:string
property:
  path: observation
  datatype: string
  max count: 1
  message: A DAR publication must have at most one observation and it must be of the type xsd:string
property:
  path: belongsToLegislature
  min count: 1
  max count: 1
  class: legislatura
  message: A DAR publication must belong to one and only one legislature
property:
  path: belongsToLegislativeSession
  min count: 1
  max count: 1
  class: sessioneLegislatura
  message: A DAR publication must belong to one and only one legislaturive session

NodeShape
target class: Document
property:
  path: documentType
  datatype: string
  max count: 1
  message: A document must have at most one document type and it must be of the type xsd:string
property:
  path: title
  max count: 1
  datatype: string
  message: A document must have at most one title and the title must be xsd:string
property:
  path: date
  datatype: date
  max count: 1
  message: A document must have at most one date and it must be of the type xsd:date
property:
  path: url
  datatype: string
  max count: 1
  message: A document must have at most one url and it must be of the type xsd:string
property:
  path: content
  datatype: string
  max count: 1
  message: A document must have at most one content and it must be of the type xsd:string
property:
  path: identifier
  max count: 1
  datatype: string
  message: A document must have at most one identifier and the identifier must be xsd:string

NodeShape
target class: Legislation
property:
  path: identifier
  max count: 1
  datatype: string
  message: A legislation must have at most one identifier and the identifier must be xsd:string

NodeShape
target class: Petition
property:
  path: identifier
  min count: 1
  max count: 1
  datatype: string
  message: A petition must have one and only one identifier and the identifier must be xsd:string
property:
  path: number
  datatype: nonNegativeInteger
  max count: 1
  message: A petition must at most one number and the number must be xsd:nonNegativeInteger
property:
  path: title
  min count: 1
  max count: 1
  datatype: string
  message: An petition must have one and only one title and the title must be xsd:string
property:
  path: belongsToLegislature
  class: legislatura
  message: An petition must belong a legislature of the type ocd:legislatura
property:
  path: belongsToLegislativeSession
  class: sessioneLegislatura
  message: An initiative must belong to a legislaturive session of the type ocd:sessioneLegislatura

NodeShape
target class: Event
property:
  path: identifier
  min count: 1
  max count: 1
  datatype: string
  message: An event must have one and only one identifier and the identifier must be xsd:string
property:
  path: typeId
  datatype: string
  min count: 1
  max count: 1
  message: An event must have one and only one typeId and it must be of the type xsd:string
property:
  path: eventType
  datatype: string
  min count: 1
  max count: 1
  message: An event must have one and exactly one event type and it must be of the type xsd:string
property:
  path: date
  datatype: date
  min count: 1
  max count: 1
  message: An event must have one and only one date and it must be of the type xsd:date
property:
  path: code
  datatype: string
  min count: 1
  max count: 1
  message: An event must have one and only one code and the code must be xsd:string
property:
  path: observation
  datatype: string
  max count: 1
  message: An event must have at most one observation and it must be of the type xsd:string
property:
  path: approvesDiploma
  class: Legislation
  message: An event approved diploma must be of the class bibo:Legislation
property:
  path: hasDiscussion
  class: discussione
  max count: 1
  message: An event must have at most one discussion and it must be of the class ocd:discussione
property:
  path: happensJointlyWithInitiative
  class: Initiative
  message: An event may happen jointly with initiatives and they must be of the type polis-ini:Initiative
property:
  path: discussedJointlyWith
  class: Petition
  message: An event may be discussed jointly with petitions and they must be of the type polis-ini:Petition
property:
  path: hasAnnex
  class: Document
  message: An event annex must be of the class bibo:Document
property:
  path: hasVote
  class: votazione
  message: An event vote must be of the class ocd:votazione
property:
  class: receivedAppeal
  or:
    class: Parliamentarian
  or:
    class: ParliamentaryGroup
  message: An event may only receive appeals from m4s:Parliamentarian or polis-core:ParliamentaryGroup
property:
  path: isPublishedInDAR
  class: DARPublication
  message: An event publication in the DAR must be of the class polis-ini:DARPublication
property:
  path: hasActivity
  class: prov-oActivity
  message: An event activity must be of the class prov:Activity

NodeShape
target class: votazione
property:
  path: identifier
  min count: 1
  max count: 1
  datatype: string
  message: A vote must have one and only one identifier and the identifier must be xsd:string
property:
  path: result
  datatype: string
  max count: 1
  message: A vote must have at most one result and the reslt must be xsd:string
property:
  path: unanimous
  datatype: boolean
  max count: 1
  message: A vote must have at most one unanimous boolean
property:
  path: description
  datatype: string
  max count: 1
  message: A vote must have at most one description and it must be xsd:string
property:
  path: reunionNumber
  datatype: int
  max count: 1
  message: A vote must have at most one reunion number and it must be xsd:int
property:
  path: reunionType
  datatype: string
  max count: 1
  message: A vote must have at most one reunion type and it must be xsd:string
property:
  path: hasVoteAgainstFrom
  or:
    class: Parliamentarian
  or:
    class: ParliamentaryGroup
  message: A vote can only have votes against from m4s:Parliamentarian or polis-core:ParliamentaryGroup
property:
  path: hasVoteInFavourFrom
  or:
    class: Parliamentarian
  or:
    class: ParliamentaryGroup
  message: A vote can only have votes in favour from m4s:Parliamentarian or polis-core:ParliamentaryGroup
property:
  path: hasAbstentionFrom
  or:
    class: Parliamentarian
  or:
    class: ParliamentaryGroup
  message: A vote can only have abstentions from m4s:Parliamentarian or polis-core:ParliamentaryGroup
property:
  path: hasAbsentee
  class: Parliamentarian
  message: A vote may only have absentees from the class m4s:Parliamentarian
property:
  path: isPublishedInDAR
  class: DARPublication
  max count: 1
  message: A vote must have at most one publication in the DAR must be of the class polis-ini:DARPublication

NodeShape
target class: prov-oActivity
property:
  path: identifier
  min count: 1
  max count: 1
  datatype: string
  message: An activity must have one and only one identifier and the identifier must be xsd:string

NodeShape
target class: discussione
property:
  path: date
  datatype: date
  min count: 1
  max count: 1
  message: A discussione must have one and only one date and it must be of the type xsd:date
property:
  path: abstract
  datatype: string
  max count: 1
  message: A discussione must have at most one abstract and it must be of the type xsd:string
property:
  path: rif intervento
  class: intervento
  message: A discussione's intervention must be of the class ocd:intervento

NodeShape
target class: intervento
property:
  path: identifier
  min count: 1
  max count: 1
  datatype: string
  message: An intervento must have one and only one identifier and the identifier must be xsd:string
property:
  path: url
  datatype: string
  min count: 1
  max count: 1
  message: An intervento must have one and only one url and the type must be xsd:string
property:
  path: isPublishedInDAR
  class: DARPublication
  max count: 1
  message: An intervento must have at most one publication in the DAR must be of the class polis-ini:DARPublication
property:
  path: hasSpeaker
  class: Person
  max count: 1
  message: An intervention must have at most one speaker and the speaker must be of the class foaf:Person

NodeShape
target class: CommissionEvent
property:
  path: observation
  datatype: string
  max count: 1
  message: A commission event must have at most one observation and it must be of the type xsd:string
property:
  path: competent
  datatype: boolean
  max count: 1
  message: A commission event must have at most one competent boolean
property:
  path: entryDate
  datatype: date
  max count: 1
  message: A commission event must have at most one entry date and it must be of the type xsd:date
property:
  path: distributionDate
  datatype: date
  max count: 1
  message: A commission event must have at most one distribution date and it must be of the type xsd:date
property:
  path: extended
  datatype: boolean
  max count: 1
  message: A commission event must have at most one extended boolean
property:
  path: scheduledDiscussionDate
  datatype: date
  max count: 1
  message: A commission event must have at most one scheduled discussion date and it must be of the type xsd:date
property:
  path: requestSchedulePlenaryDate
  datatype: date
  max count: 1
  message: A commission event must have at most one request schedule plenary date and it must be of the type xsd:date
property:
  path: awaitsPlenarySchedule
  datatype: boolean
  max count: 1
  message: A commission event must have at most one awaits plenary schedule boolean
property:
  path: publicAppreciationDate
  datatype: date
  max count: 1
  message: A commission event must have at most one public appreciation date and it must be of the type xsd:date
property:
  path: opinionRequested
  datatype: boolean
  max count: 1
  message: A commission event must have at most one opinion requested boolean
property:
  path: opinionReceived
  datatype: boolean
  max count: 1
  message: A commission event must have at most one opinion received boolean
property:
  path: subCommissionDistributionDate
  datatype: date
  max count: 1
  message: A commission event must have at most one sub commission distribution date and it must be of the type xsd:date
property:
  path: negativeOpinionReason
  datatype: string
  max count: 1
  message: A commission event must have at most one negative opinion reason and it must be of the type xsd:string
property:
  path: negativeOpinionReasonDate
  datatype: date
  max count: 1
  message: A commission event must have at most one negative opinion reason date and it must be of the type xsd:date
property:
  path: attributedToCommission
  class: Commission
  min count: 1
  message: A commission event must have at least one attributed commission and it must be of the class polis-core:Commission
property:
  path: hasAudition
  class: Audition
  max count: 1
  message: A commission event must have at most one audition and it must be of the class polis-mpact:Audition
property:
  path: hasHearing
  class: Hearing
  max count: 1
  message: A commission event must have at most one hearing and it must be of the class polis-mpact:Hearing
property:
  path: isPublishedInDAR
  class: DARPublication
  message: A commission event publication in the DAR must be of the class polis-ini:DARPublication
property:
  path: hasVote
  class: votazione
  message: A commission event vote must be of the class ocd:votazione
property:
  path: hasTransmission
  class: Transmission
  message: A commission event transmission must be of the class polis-ini:Transmission
property:
  path: hasRapporteur
  class: Parliamentarian
  message: A commission event rapporteur must be of the class m4s:Parliamentarian
property:
  path: hasPublishedReport
  class: DARPublication
  message: A commission event published report must be of the class polis-ini:DARPublication
property:
  path: createsDocument
  class: Document
  message: A commission event created documents must be of the class bibo:Documents
property:
  path: hasSubComission
  class: Commission
  message: A commission event's subcommissions must be of the class polis-core:Commission

NodeShape
target class: Transmission
property:
  path: transmissionType
  datatype: string
  min count: 1
  max count: 1
  message: A transmission must have one and only one transmission type of the type xsd:string
property:
  path: date
  datatype: date
  max count: 1
  message: A transmission must at most one date and it must be of the type xsd:date
property:
  path: created
  datatype: date
  max count: 1
  message: A transmission must have at most one creation date and it must be of the type xsd:date

NodeShape
target class: Award
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: An Award must have exactly one identifier and the identifier must be a xsd:string
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: An Award must have exactly one name and the name must be a xsd:string
property:
  path: number
  datatype: nonNegativeInteger
  min count: 1
  max count: 1
  message: An Award must have exactly one number and the number must be a xsd:nonNegativeInteger

NodeShape
target class: PublishedWork
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A Published Work must have exactly one identifier and the identifier must be a xsd:string
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: A Published Work must have exactly one title and the title must be a xsd:string
property:
  path: number
  datatype: nonNegativeInteger
  min count: 1
  max count: 1
  message: A Published Work must have exactly one number and the number must be a xsd:nonNegativeInteger

NodeShape
target class: Habilitation
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A Habilitation must have exactly one identifier and the identifier must be a xsd:string
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: A Habilitation must have exactly one name and the name must be a xsd:string
property:
  path: isHabilitationLevel
  or:
    class: PrimarySchool
  or:
    class: MiddleSchool
  or:
    class: EarlyHighSchool
  or:
    class: HighSchool
  or:
    class: HigherEducation
  or:
    class: Bachelor
  or:
    class: Master
  or:
    class: Postgrad
  min count: 1
  max count: 1
  message: A Habilitation must have exactly one level and the level must be a subclass of polis-bio:HabilitationLevel
property:
  path: isHabilitationStatus
  or:
    class: http://purl.org/polis/ar/biographic#C
  or:
    class: http://purl.org/polis/ar/biographic#F
  min count: 1
  max count: 1
  message: A Habilitation must have exactly one status and the status must be a polis-bio:HabilitationStatus

NodeShape
target class: HabilitationLevel
property:
  path: number
  datatype: nonNegativeInteger
  min count: 1
  max count: 1
  message: A Habilitation Level must have exactly one number and the number must be a xsd:nonNegativeInteger

NodeShape
target class: Role
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A Role must have exactly one identifier and the identifier must be a xsd:string
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: A Role must have exactly one name and the name must be a xsd:string
property:
  path: number
  datatype: nonNegativeInteger
  min count: 1
  max count: 1
  message: A Role must have exactly one number and the number must be a xsd:nonNegativeInteger
property:
  path: doneBefore
  datatype: boolean
  min count: 0
  max count: 1
  message: A Role must have a maximum of one doneBefore and the doneBefore must be a xsd:boolean

NodeShape
target class: Title
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A Title must have exactly one identifier and the identifier must be a xsd:string
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: A Title must have exactly one name and the name must be a xsd:string
property:
  path: number
  datatype: nonNegativeInteger
  min count: 1
  max count: 1
  message: A Title must have exactly one number and the number must be a xsd:nonNegativeInteger

NodeShape
target class: richiestaParere
target class: Request
target class: Inquiry
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A Requisition must have exactly one identifier and the identifier must be a xsd:string
property:
  path: number
  datatype: nonNegativeInteger
  min count: 1
  max count: 1
  message: A Requisition must have exactly one number and the number must be a xsd:nonNegativeInteger
property:
  path: subject
  datatype: string
  min count: 1
  max count: 1
  message: A Requisition must have exactly one subject and the subject must be a xsd:string
property:
  path: date
  datatype: date
  min count: 1
  max count: 1
  message: A Requisition must have exactly one date and the date must be a xsd:date
property:
  path: belongsToLegislature
  class: legislatura
  min count: 1
  max count: 1
  message: A Requisition must have exactly one belongsToLegislature and the legislature must be a ocd:legislatura
property:
  path: belongsToLegislativeSession
  class: sessioneLegislatura
  min count: 1
  max count: 1
  message: A Requisition must have exactly one belongsToLegislativeSession and the legislative session must be a ocd:sessioneLegislatura
property:
  path: toPublicEntityType
  in: AC
  in: AL
  in: AR
  in: EI
  in: RA
  min count: 0
  max count: 1
  message: A Requisition must have at most one toPublicEntityType and the public entity type must be a mpact:PublicEntityType

NodeShape
target class: ParliamentaryActivity
target class: AGP
target class: CER
target class: DEB
target class: DES
target class: DPO
target class: DPR
target class: EGP
target class: EVN
target class: GOD
target class: IMU
target class: INI
target class: ITG
target class: MOC
target class: OEX
target class: PEC
target class: PEG
target class: PET
target class: PII
target class: POR
target class: PRC
target class: PRG
target class: PUE
target class: REP
target class: RSI
target class: SES
target class: VOT
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A Parliamentary Activity must have exactly one identifier and the identifier must be a xsd:string
property:
  path: number
  datatype: nonNegativeInteger
  min count: 1
  max count: 1
  message: A Parliamentary Activity must have exactly one number and the number must be a xsd:nonNegativeInteger
property:
  path: belongsToLegislature
  class: legislatura
  min count: 1
  max count: 1
  message: A Parliamentary Activity must have exactly one belongsToLegislature and the legislature must be a ocd:legislatura
property:
  path: belongsToLegislativeSession
  class: sessioneLegislatura
  min count: 1
  max count: 1
  message: A Parliamentary Activity must have exactly one belongsToLegislativeSession and the legislative session must be a ocd:sessioneLegislatura
property:
  path: date
  datatype: date
  min count: 1
  max count: 1
  message: A Parliamentary Activity must have exactly one date and the date must be a xsd:date
property:
  path: debateDate
  datatype: date
  min count: 0
  max count: 1
  message: A Parliamentary Activity must have at most one debate date and the date must be a xsd:date
property:
  path: subject
  datatype: string
  min count: 1
  max count: 1
  message: A Parliamentary Activity must have exactly one subject and the subject must be a xsd:string

NodeShape
target class: FriendshipParliamentaryGroup
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A Friendship Parliamentary Group must have exactly one identifier and the identifier must be a xsd:string
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: A Friendship Parliamentary Group must have exactly one name and the name must be a xsd:string
property:
  path: belongsToLegislature
  class: legislatura
  min count: 1
  max count: 1
  message: A Friendship Parliamentary Group must have exactly one belongsToLegislature and the legislature must be a ocd:legislatura

NodeShape
target class: PublicAccounts
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A Public Accounts must have exactly one identifier and the identifier must be a xsd:string
property:
  path: civilYear
  datatype: gYear
  min count: 0
  max count: 1
  message: A Public Accounts must have exactly one civil year and the civil year must be a xsd:gYear
property:
  path: date
  datatype: date
  min count: 0
  max count: 1
  message: A Public Accounts must have exactly one date and the date must be a xsd:date
property:
  path: subject
  datatype: string
  min count: 1
  max count: 1
  message: A Public Accounts must have exactly one subject and the subject must be a xsd:string
property:
  path: belongsToLegislature
  class: legislatura
  min count: 0
  max count: 1
  message: A Public Accounts must have exactly one belongsToLegislature and the legislature must be a ocd:legislatura

NodeShape
target class: Delegation
target class: PermanentDelegation
target class: TemporaryDelegation
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A Delegation must have exactly one identifier and the identifier must be a xsd:string
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: A Delegation must have exactly one name and the name must be a xsd:string
property:
  path: belongsToLegislature
  class: legislatura
  min count: 1
  max count: 1
  message: A Delegation must have exactly one belongsToLegislature and the legislature must be a ocd:legislatura
property:
  path: belongsToLegislativeSession
  class: sessioneLegislatura
  min count: 1
  max count: 1
  message: A Delegation must have exactly one belongsToLegislativeSession and the legislative session must be a ocd:sessioneLegislatura

NodeShape
target class: PermanentDelegation
property:
  path: hasPermanentDelegationMeeting
  class: PermanentDelegationMeeting
  min count: 1
  max count: 1
  message: A Permanent Delegation must have exactly one permanent delegation meeting and the meeting must be a polis-mpact:PermanentDelegationMeeting

NodeShape
target class: TemporaryDelegation
property:
  path: date
  datatype: date
  min count: 1
  max count: 1
  message: A Temporary Delegation must have exactly one date and the date must be a xsd:date
property:
  path: hasPlace
  class: Place
  min count: 1
  max count: 1
  message: A Temporary Delegation must have exactly one place and the place must be a sem:Place
property:
  path: hasDelegationScope
  in: NationalDelegation
  in: InternationalDelegation
  min count: 1
  max count: 1
  message: A Temporary Delegation must have exactly one delegation scope and the delegation scope must be a polis-mpact:DelegationScope

NodeShape
target class: PermanentDelegationMeeting
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: A Permanent Delegation Meeting must have exactly one name and the name must be a xsd:string
property:
  path: date
  datatype: date
  min count: 1
  max count: 1
  message: A Permanent Delegation Meeting must have exactly one date and the date must be a xsd:date
property:
  path: hasPlace
  class: Place
  min count: 1
  max count: 1
  message: A Permanent Delegation Meeting must have exactly one place and the place must be a sem:Place

NodeShape
target class: YouthParliamentActivity
property:
  path: date
  datatype: date
  min count: 1
  max count: 1
  message: A Youth Parliament Activity must have exactly one date and the date must be a xsd:date
property:
  path: meetingType
  datatype: string
  min count: 1
  max count: 1
  message: A Youth Parliament Activity must have exactly one meetingType and the type must be a xsd:string
property:
  path: heldAt
  class: School
  min count: 1
  max count: 1
  message: A Youth Parliament Activity must have exactly one location and the location must be a dbo:School
property:
  path: inConstituency
  class: ConstituencyArea
  min count: 1
  max count: 1
  message: A Youth Parliament Activity must have exactly one constituency and the constituency must be a pe:ConstituencyArea
property:
  path: belongsToLegislature
  class: legislatura
  min count: 1
  max count: 1
  message: A Youth Parliament Activity must have exactly one legislature and the legislature must be a ocd:legislatura

NodeShape
target class: School
property:
  path: isSchoolType
  or:
    class: Basic
  or:
    class: Secondary
  min count: 1
  max count: 1
  message: A School must have exactly one school type and the type must be a subclass of polis-mpact:SchoolType

NodeShape
target class: CommissionActivity
target class: Audition
target class: Event
target class: Debate
target class: Cerimony
target class: Conference
target class: Others
target class: Visit
target class: Hearing
property:
  path: identifier
  datatype: string
  min count: 1
  max count: 1
  message: A Commission Activity must have exactly one identifier and the identifier must be a xsd:string
property:
  path: subject
  datatype: string
  min count: 1
  max count: 1
  message: A Commission Activity must have exactly one subject and the subject must be a xsd:string
property:
  path: date
  datatype: date
  min count: 1
  max count: 1
  message: A Commission Activity must have exactly one date and the date must be a xsd:date
property:
  path: location
  datatype: string
  min count: 1
  max count: 1
  message: A Commission Activity must have exactly one location and the location must be a xsd:string
property:
  path: belongsToLegislature
  class: legislatura
  min count: 1
  max count: 1
  message: A Commission Activity must have exactly one belongsToLegislature and the legislature must be a ocd:legislatura
property:
  path: relatedCommission
  class: Commission
  min count: 1
  max count: 1
  message: A Commission Activity must have exactly one related commission and the related commission must be a polis-core:Commission

NodeShape
target class: Audition
target class: Hearing
property:
  path: commissionIdentifier
  datatype: string
  min count: 1
  max count: 1
  message: A Commission must have exactly one name and the name must be a xsd:string
property:
  path: prov-owasAssociatedWith
  class: ThirdPartyEntity
  min count: 1
  max count: 1
  message: A Commission must have exactly one belongsToLegislature and the legislature must be a ocd:legislatura

NodeShape
target class: ThirdPartyEntity
property:
  path: name
  datatype: string
  min count: 1
  max count: 1
  message: A Third Party Entity must have exactly one name and the name must be a xsd:string