

Class(_id='http://example.org/abstract-class', clsname=['http', '//example.org/abstract-class'], parent_ids=[], derived_ids=['http://example.org/concrete-class'], properties=[], comment='An Abstract class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=True, named_individuals=[])
Class(_id='http://example.org/abstract-sh-class', clsname=['http', '//example.org/abstract-sh-class'], parent_ids=[], derived_ids=['http://example.org/concrete-sh-class'], properties=[], comment='', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=True, named_individuals=[])
Class(_id='http://example.org/abstract-spdx-class', clsname=['http', '//example.org/abstract-spdx-class'], parent_ids=[], derived_ids=['http://example.org/concrete-spdx-class'], properties=[], comment='An Abstract class using the SPDX type', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=True, named_individuals=[])
Class(_id='http://example.org/concrete-class', clsname=['http', '//example.org/concrete-class'], parent_ids=['http://example.org/abstract-class'], derived_ids=[], properties=[], comment='A concrete class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/concrete-sh-class', clsname=['http', '//example.org/concrete-sh-class'], parent_ids=['http://example.org/abstract-sh-class'], derived_ids=[], properties=[], comment='A concrete class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/concrete-spdx-class', clsname=['http', '//example.org/concrete-spdx-class'], parent_ids=['http://example.org/abstract-spdx-class'], derived_ids=[], properties=[], comment='A concrete class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/enumType', clsname=['http', '//example.org/enumType'], parent_ids=[], derived_ids=[], properties=[], comment='An enumerated type', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[Individual(_id='http://example.org/enumType/bar', varname='bar', comment='The bar value of enumType'), Individual(_id='http://example.org/enumType/foo', varname='foo', comment='The foo value of enumType'), Individual(_id='http://example.org/enumType/nolabel', varname='nolabel', comment='This value has no label')])
Class(_id='http://example.org/extensible-abstract-class', clsname=['http', '//example.org/extensible-abstract-class'], parent_ids=[], derived_ids=[], properties=[], comment='An extensible abstract class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=True, is_abstract=True, named_individuals=[])
Class(_id='http://example.org/id-prop-class', clsname=['http', '//example.org/id-prop-class'], parent_ids=[], derived_ids=['http://example.org/inherited-id-prop-class'], properties=[], comment='A class with an ID alias', id_property='testid', node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/inherited-id-prop-class', clsname=['http', '//example.org/inherited-id-prop-class'], parent_ids=['http://example.org/id-prop-class'], derived_ids=[], properties=[], comment='A class that inherits its idPropertyName from the parent', id_property='testid', node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/link-class', clsname=['http', '//example.org/link-class'], parent_ids=[], derived_ids=['http://example.org/extensible-class', 'http://example.org/link-derived-class', 'http://example.org/node-kind-blank', 'http://example.org/node-kind-iri', 'http://example.org/node-kind-iri-or-blank'], properties=[Property(path='http://example.org/link-class-extensible', varname='-extensible', comment='A link to an extensible-class', max_count=1, min_count=None, enum_values=None, class_id='http://example.org/extensible-class', datatype='', pattern=''), Property(path='http://example.org/link-class-link-list-prop', varname='-link-list-prop', comment='A link-class list property', max_count=None, min_count=None, enum_values=None, class_id='http://example.org/link-class', datatype='', pattern=''), Property(path='http://example.org/link-class-link-prop', varname='-link-prop', comment='A link-class property', max_count=1, min_count=None, enum_values=None, class_id='http://example.org/link-class', datatype='', pattern=''), Property(path='http://example.org/link-class-link-prop-no-class', varname='-link-prop-no-class', comment='A link-class property with no sh:class', max_count=1, min_count=None, enum_values=None, class_id='http://example.org/link-class', datatype='', pattern=''), Property(path='http://example.org/link-class-tag', varname='-tag', comment='Tag used to identify object for testing', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern='')], comment='A class to test links', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/link-derived-class', clsname=['http', '//example.org/link-derived-class'], parent_ids=['http://example.org/link-class'], derived_ids=[], properties=[], comment='A class derived from link-class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/node-kind-blank', clsname=['http', '//example.org/node-kind-blank'], parent_ids=['http://example.org/link-class'], derived_ids=[], properties=[], comment='A class that must be a blank node', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNode'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/node-kind-iri', clsname=['http', '//example.org/node-kind-iri'], parent_ids=['http://example.org/link-class'], derived_ids=['http://example.org/derived-node-kind-iri'], properties=[], comment='A class that must be an IRI', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#IRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/node-kind-iri-or-blank', clsname=['http', '//example.org/node-kind-iri-or-blank'], parent_ids=['http://example.org/link-class'], derived_ids=[], properties=[], comment='A class that can be either a blank node or an IRI', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/non-shape-class', clsname=['http', '//example.org/non-shape-class'], parent_ids=[], derived_ids=[], properties=[], comment='A class that is not a nodeshape', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/parent-class', clsname=['http', '//example.org/parent-class'], parent_ids=[], derived_ids=['http://example.org/aaa-derived-class', 'http://example.org/test-class'], properties=[], comment='The parent class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/required-abstract', clsname=['http', '//example.org/required-abstract'], parent_ids=[], derived_ids=[], properties=[Property(path='http://example.org/required-abstract/abstract-class-prop', varname='abstract-class-prop', comment='A required abstract class property', max_count=1, min_count=1, enum_values=None, class_id='http://example.org/abstract-class', datatype='', pattern='')], comment='A class with a mandatory abstract class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/test-another-class', clsname=['http', '//example.org/test-another-class'], parent_ids=[], derived_ids=[], properties=[], comment='Another class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/test-class', clsname=['http', '//example.org/test-class'], parent_ids=['http://example.org/parent-class'], derived_ids=['http://example.org/test-class-required', 'http://example.org/test-derived-class'], properties=[Property(path='http://example.org/encode', varname='encode', comment='A property that conflicts with an existing SHACLObject property', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern=''), Property(path='http://example.org/import', varname='import', comment='A property that is a keyword', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern=''), Property(path='http://example.org/test-class/anyuri-prop', varname='anyuri-prop', comment='a URI', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#anyURI', pattern=''), Property(path='http://example.org/test-class/boolean-prop', varname='boolean-prop', comment='a boolean property', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#boolean', pattern=''), Property(path='http://example.org/test-class/class-list-prop', varname='class-list-prop', comment='A test-class list property', max_count=None, min_count=None, enum_values=None, class_id='http://example.org/test-class', datatype='', pattern=''), Property(path='http://example.org/test-class/class-prop', varname='class-prop', comment='A test-class property', max_count=1, min_count=None, enum_values=None, class_id='http://example.org/test-class', datatype='', pattern=''), Property(path='http://example.org/test-class/class-prop-no-class', varname='class-prop-no-class', comment='A test-class property with no sh:class', max_count=1, min_count=None, enum_values=None, class_id='http://example.org/test-class', datatype='', pattern=''), Property(path='http://example.org/test-class/datetime-list-prop', varname='datetime-list-prop', comment='A datetime list property', max_count=None, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#dateTime', pattern=''), Property(path='http://example.org/test-class/datetime-scalar-prop', varname='datetime-scalar-prop', comment='A scalar datetime property', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#dateTime', pattern=''), Property(path='http://example.org/test-class/datetimestamp-scalar-prop', varname='datetimestamp-scalar-prop', comment='A scalar dateTimeStamp property', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#dateTimeStamp', pattern=''), Property(path='http://example.org/test-class/enum-list-prop', varname='enum-list-prop', comment='A enum list property', max_count=None, min_count=None, enum_values=[rdflib.term.URIRef('http://example.org/enumType/bar'), rdflib.term.URIRef('http://example.org/enumType/foo'), rdflib.term.URIRef('http://example.org/enumType/nolabel'), rdflib.term.URIRef('http://example.org/enumType/non-named-individual')], class_id='http://example.org/enumType', datatype='', pattern=''), Property(path='http://example.org/test-class/enum-prop', varname='enum-prop', comment='A enum property', max_count=1, min_count=None, enum_values=[rdflib.term.URIRef('http://example.org/enumType/bar'), rdflib.term.URIRef('http://example.org/enumType/foo'), rdflib.term.URIRef('http://example.org/enumType/nolabel'), rdflib.term.URIRef('http://example.org/enumType/non-named-individual')], class_id='http://example.org/enumType', datatype='', pattern=''), Property(path='http://example.org/test-class/enum-prop-no-class', varname='enum-prop-no-class', comment='A enum property with no sh:class', max_count=1, min_count=None, enum_values=[rdflib.term.URIRef('http://example.org/enumType/bar'), rdflib.term.URIRef('http://example.org/enumType/foo'), rdflib.term.URIRef('http://example.org/enumType/nolabel'), rdflib.term.URIRef('http://example.org/enumType/non-named-individual')], class_id='http://example.org/enumType', datatype='', pattern=''), Property(path='http://example.org/test-class/float-prop', varname='float-prop', comment='a float property', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#decimal', pattern=''), Property(path='http://example.org/test-class/integer-prop', varname='integer-prop', comment='a non-negative integer', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#integer', pattern=''), Property(path='http://example.org/test-class/named-property', varname=rdflib.term.Literal('named_property'), comment='A named property', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern=''), Property(path='http://example.org/test-class/non-shape', varname='non-shape', comment='A class with no shape', max_count=1, min_count=None, enum_values=None, class_id='http://example.org/non-shape-class', datatype='', pattern=''), Property(path='http://example.org/test-class/nonnegative-integer-prop', varname='nonnegative-integer-prop', comment='a non-negative integer', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#nonNegativeInteger', pattern=''), Property(path='http://example.org/test-class/positive-integer-prop', varname='positive-integer-prop', comment='A positive integer', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#positiveInteger', pattern=''), Property(path='http://example.org/test-class/regex', varname='regex', comment='A regex validated string', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern='^foo\\d'), Property(path='http://example.org/test-class/regex-datetime', varname='regex-datetime', comment='A regex dateTime', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#dateTime', pattern='^\\d\\d\\d\\d-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d\\+01:00$'), Property(path='http://example.org/test-class/regex-datetimestamp', varname='regex-datetimestamp', comment='A regex dateTimeStamp', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#dateTimeStamp', pattern='^\\d\\d\\d\\d-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\dZ$'), Property(path='http://example.org/test-class/regex-list', varname='regex-list', comment='A regex validated string list', max_count=None, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern='^foo\\d'), Property(path='http://example.org/test-class/string-list-no-datatype', varname='string-list-no-datatype', comment='A string list property with no sh:datatype', max_count=None, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern=''), Property(path='http://example.org/test-class/string-list-prop', varname='string-list-prop', comment='A string list property', max_count=None, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern=''), Property(path='http://example.org/test-class/string-scalar-prop', varname='string-scalar-prop', comment='A scalar string propery', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern='')], comment='The test class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[Individual(_id='http://example.org/test-class/named', varname='named', comment='')])
Class(_id='http://example.org/test-class-required', clsname=['http', '//example.org/test-class-required'], parent_ids=['http://example.org/test-class'], derived_ids=[], properties=[Property(path='http://example.org/test-class/required-string-list-prop', varname='required-string-list-prop', comment='A required string list property', max_count=2, min_count=1, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern=''), Property(path='http://example.org/test-class/required-string-scalar-prop', varname='required-string-scalar-prop', comment='A required scalar string property', max_count=1, min_count=1, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern='')], comment='', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/test-derived-class', clsname=['http', '//example.org/test-derived-class'], parent_ids=['http://example.org/test-class'], derived_ids=[], properties=[Property(path='http://example.org/test-derived-class/string-prop', varname='string-prop', comment='A string property in a derived class', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern='')], comment='A class derived from test-class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/uses-extensible-abstract-class', clsname=['http', '//example.org/uses-extensible-abstract-class'], parent_ids=[], derived_ids=[], properties=[Property(path='http://example.org/uses-extensible-abstract-class/prop', varname='prop', comment='A property that references and abstract extensible class', max_count=1, min_count=1, enum_values=None, class_id='http://example.org/extensible-abstract-class', datatype='', pattern='')], comment='A class that uses an abstract extensible class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/aaa-derived-class', clsname=['http', '//example.org/aaa-derived-class'], parent_ids=['http://example.org/parent-class'], derived_ids=[], properties=[], comment='Derived class that sorts before the parent to test ordering', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/derived-node-kind-iri', clsname=['http', '//example.org/derived-node-kind-iri'], parent_ids=['http://example.org/node-kind-iri'], derived_ids=[], properties=[], comment='A class that derives its nodeKind from parent', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#IRI'), is_extensible=False, is_abstract=False, named_individuals=[])
Class(_id='http://example.org/extensible-class', clsname=['http', '//example.org/extensible-class'], parent_ids=['http://example.org/link-class'], derived_ids=[], properties=[Property(path='http://example.org/extensible-class/property', varname='property', comment='An extensible property', max_count=1, min_count=None, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern=''), Property(path='http://example.org/extensible-class/required', varname='required', comment='A required extensible property', max_count=1, min_count=1, enum_values=None, class_id='', datatype='http://www.w3.org/2001/XMLSchema#string', pattern='')], comment='An extensible class', id_property=None, node_kind=rdflib.term.URIRef('http://www.w3.org/ns/shacl#BlankNodeOrIRI'), is_extensible=True, is_abstract=False, named_individuals=[])
