@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix neptune: <http://aws.amazon.com/neptune/vocab/v01/> .

<https://semlayer.io/shapes/fibo-demo/ContractShape> a <http://www.w3.org/ns/shacl#NodeShape> ;
	rdfs:comment "Minimum record-keeping rules for a FIBO contract." ;
	rdfs:label "Contract completeness" ;
	<http://www.w3.org/ns/shacl#targetClass> <https://spec.edmcouncil.org/fibo/ontology/FND/Agreements/Contracts/Contract> ;
	<http://www.w3.org/ns/shacl#property> _:b914667279 , _:b914667535 , _:b914667791 .

_:b914667279 <http://www.w3.org/ns/shacl#path> <https://spec.edmcouncil.org/fibo/ontology/FND/Agreements/Contracts/hasContractParty> .

_:b914667535 <http://www.w3.org/ns/shacl#path> <https://spec.edmcouncil.org/fibo/ontology/FND/Agreements/Contracts/hasGoverningJurisdiction> .

_:b914667791 <http://www.w3.org/ns/shacl#path> <https://spec.edmcouncil.org/fibo/ontology/FND/Agreements/Contracts/isAssignable> .

_:b914667279 <http://www.w3.org/ns/shacl#minCount> 2 .

_:b914667535 <http://www.w3.org/ns/shacl#minCount> 1 ;
	<http://www.w3.org/ns/shacl#maxCount> 1 .

_:b914667791 <http://www.w3.org/ns/shacl#maxCount> 1 ;
	<http://www.w3.org/ns/shacl#datatype> xsd:boolean .

_:b914667279 <http://www.w3.org/ns/shacl#message> "A contract must record at least two parties." .

_:b914667535 <http://www.w3.org/ns/shacl#message> "A contract must name exactly one governing jurisdiction." .

_:b914667791 <http://www.w3.org/ns/shacl#message> "isAssignable must be a single boolean value." .

_:b914667279 <http://www.w3.org/ns/shacl#severity> <http://www.w3.org/ns/shacl#Violation> .

_:b914667535 <http://www.w3.org/ns/shacl#severity> <http://www.w3.org/ns/shacl#Violation> .

_:b914667791 <http://www.w3.org/ns/shacl#severity> <http://www.w3.org/ns/shacl#Violation> .
