diff --git a/0.2.x/examples/ro-crate-1.1/ro-crate-metadata/ro-crate-metadata.json b/0.2.x/examples/ro-crate-1.1/ro-crate-metadata/ro-crate-metadata.json index 22aa547..16edd2c 100644 --- a/0.2.x/examples/ro-crate-1.1/ro-crate-metadata/ro-crate-metadata.json +++ b/0.2.x/examples/ro-crate-1.1/ro-crate-metadata/ro-crate-metadata.json @@ -186,7 +186,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Organization", "rdfs:comment" : "Organization", "@id" : "openBIS:hasPUBLICATION.ORGANIZATION", @@ -216,7 +216,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Family Name", "rdfs:comment" : "Family Name", "@id" : "openBIS:hasPUBLICATION_CREATOR.FAMILY_NAME", @@ -235,7 +235,7 @@ "@id" : ":Object", "@type" : "rdfs:Class" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "@id" : "openBIS:hasSPACE", "schema:rangeIncludes" : { "@id" : "openBIS:Space" @@ -250,7 +250,7 @@ "@id" : "PUBLICATION" } ] }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Identifier Scheme", "rdfs:comment" : "Identifier Scheme", "@id" : "openBIS:hasPUBLICATION_PUBLISHER.IDENTIFIER_SCHEME", @@ -264,7 +264,7 @@ "@id" : "http://datacite.org/schema/kernel-4#publisherIdentifierScheme" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Publication Identifier", "rdfs:comment" : "Publication Identifier", "@id" : "openBIS:hasPUBLICATION.IDENTIFIER", @@ -291,7 +291,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Name", "rdfs:comment" : "Name", "@id" : "openBIS:hasNAME", @@ -353,7 +353,7 @@ }, "@type" : "PUBLICATION" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Default collection view", "rdfs:comment" : "Default view for experiments of the type collection", "@id" : "openBIS:hasDEFAULT_COLLECTION_VIEW", @@ -364,7 +364,7 @@ "@id" : "COLLECTION" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Affiliation Identifier Scheme", "rdfs:comment" : "Affiliation Identifier Scheme", "@id" : "openBIS:hasPUBLICATION_CREATOR.AFFILITION_IDENTIFIER_SCHEME", @@ -375,7 +375,7 @@ "@id" : "PUBLICATION_CREATOR" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "@id" : "openBIS:hasCOLLECTION", "schema:rangeIncludes" : { "@id" : "openBIS:Collection" @@ -390,7 +390,7 @@ "@id" : "PUBLICATION" } ] }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Affiliation Identifier Scheme URI", "rdfs:comment" : "Affiliation Identifier Scheme URI", "@id" : "openBIS:hasPUBLICATION_CREATOR.AFFILITION_IDENTIFIER_SCHEME_URI", @@ -419,7 +419,7 @@ "@id" : "/PUBLICATIONS/PUBLIC_REPOSITORIES", "@type" : "openBIS:Project" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Publisher Identifier", "rdfs:comment" : "Publisher Identifier", "@id" : "openBIS:hasPUBLICATION_PUBLISHER.IDENTIFIER", @@ -459,7 +459,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Description", "rdfs:comment" : "Description", "@id" : "openBIS:hasPUBLICATION.DESCRIPTION", @@ -491,7 +491,7 @@ "owl:minCardinality" : 1, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Creator Identifier", "rdfs:comment" : "Creator Identifier", "@id" : "openBIS:hasPUBLICATION_CREATOR.IDENTIFIER", @@ -523,7 +523,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Publication Year", "rdfs:comment" : "Publication Year", "@id" : "openBIS:hasPUBLICATION.PUBLICATION_YEAR", @@ -566,7 +566,7 @@ "@id" : "PUBLICATIONS", "@type" : "openBIS:Space" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Publisher", "rdfs:comment" : "Publisher", "@id" : "openBIS:hasPUBLICATION.PUBLISHER", @@ -638,7 +638,7 @@ "owl:minCardinality" : 1, "owl:maxCardinality" : 0 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Creators", "rdfs:comment" : "Creators", "@id" : "openBIS:hasPUBLICATION.CREATOR", @@ -670,7 +670,7 @@ "@id" : "https://schema.org/Organization" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Comments", "rdfs:comment" : "Comments log", "@id" : "openBIS:hasXMLCOMMENTS", @@ -681,7 +681,7 @@ "@id" : "PUBLICATION" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Given Name", "rdfs:comment" : "Given Name", "@id" : "openBIS:hasPUBLICATION_CREATOR.GIVEN_NAME", @@ -718,7 +718,7 @@ "@id" : "/PUBLICATIONS/PUBLIC_REPOSITORIES/PUBLICATIONS_COLLECTION", "@type" : "COLLECTION" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Abstract", "rdfs:comment" : "Abstract of the publication", "@id" : "openBIS:hasPUBLICATION.ABSTRACT", @@ -748,7 +748,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "URL", "rdfs:comment" : "URL", "@id" : "openBIS:hasPUBLICATION.URL", @@ -811,7 +811,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "openBIS Related Identifiers", "rdfs:comment" : "openBIS Related Identifiers", "@id" : "openBIS:hasPUBLICATION.OPENBIS_RELATED_IDENTIFIERS", @@ -860,7 +860,7 @@ "@id" : "/PUBLICATIONS/PUBLIC_REPOSITORIES/PUBLICATIONS_CREATOR_COLLECTION", "@type" : "COLLECTION" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Publication Status", "rdfs:comment" : "Publication Status", "@id" : "openBIS:hasPUBLICATION.STATUS", @@ -876,7 +876,7 @@ "@id" : "http://datacite.org/schema/kernel-4#stateSelection" } ] }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Default object type", "rdfs:comment" : "Enter the code of the object type for which the collection is used", "@id" : "openBIS:hasDEFAULT_OBJECT_TYPE", @@ -925,7 +925,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Contributors", "rdfs:comment" : "Contributors", "@id" : "openBIS:hasPUBLICATION.CONTRIBUTOR", @@ -955,7 +955,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Identifier Scheme", "rdfs:comment" : "Identifier", "@id" : "openBIS:hasPUBLICATION_CREATOR.IDENTIFIER_SCHEME", @@ -966,7 +966,7 @@ "@id" : "PUBLICATION_CREATOR" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Type", "rdfs:comment" : "Type", "@id" : "openBIS:hasPUBLICATION.TYPE", @@ -983,7 +983,7 @@ "@id" : "/PUBLICATIONS/PUBLIC_REPOSITORIES/PUBLICATIONS_PUBLISHER_COLLECTION", "@type" : "COLLECTION" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Identifier Scheme URI", "rdfs:comment" : "Identifier Scheme URI", "@id" : "openBIS:hasPUBLICATION_PUBLISHER.IDENTIFIER_SCHEME_URI", @@ -997,7 +997,7 @@ "@id" : "http://datacite.org/schema/kernel-4#schemeURI" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Affilition", "rdfs:comment" : "Affiliation Identifier", "@id" : "openBIS:hasPUBLICATION_CREATOR.AFFILITION_IDENTIFIER", diff --git a/0.2.x/lib/example/obenbis-one-publication/ro-crate-metadata.json b/0.2.x/lib/example/obenbis-one-publication/ro-crate-metadata.json index d57c45e..df81d0f 100644 --- a/0.2.x/lib/example/obenbis-one-publication/ro-crate-metadata.json +++ b/0.2.x/lib/example/obenbis-one-publication/ro-crate-metadata.json @@ -176,7 +176,7 @@ "@id" : "ro-crate-metadata.json", "@type" : "CreativeWork" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "@id" : "openBIS:hasCOLLECTION", "schema:rangeIncludes" : { "@id" : "openBIS:Collection" @@ -191,7 +191,7 @@ "@id" : "PUBLICATION" } ] }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Identifier Scheme URI", "rdfs:comment" : "Identifier Scheme URI", "@id" : "openBIS:hasPUBLICATION_PUBLISHER.IDENTIFIER_SCHEME_URI", @@ -205,7 +205,7 @@ "@id" : "http://datacite.org/schema/kernel-4#schemeURI" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "URL", "rdfs:comment" : "URL", "@id" : "openBIS:hasPUBLICATION.URL", @@ -221,7 +221,7 @@ "@id" : "http://datacite.org/schema/kernel-4#url" } ] }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Name", "rdfs:comment" : "Name", "@id" : "openBIS:hasNAME", @@ -279,7 +279,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Affiliation Identifier Scheme URI", "rdfs:comment" : "Affiliation Identifier Scheme URI", "@id" : "openBIS:hasPUBLICATION_CREATOR.AFFILITION_IDENTIFIER_SCHEME_URI", @@ -322,7 +322,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Publication Status", "rdfs:comment" : "Publication Status", "@id" : "openBIS:hasPUBLICATION.STATUS", @@ -422,7 +422,7 @@ "@id" : "/PUBLICATIONS/PUBLIC_REPOSITORIES/PUBLICATIONS_COLLECTION", "@type" : "COLLECTION" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Publisher Identifier", "rdfs:comment" : "Publisher Identifier", "@id" : "openBIS:hasPUBLICATION_PUBLISHER.IDENTIFIER", @@ -481,7 +481,7 @@ "@id" : "/PUBLICATIONS/PUBLIC_REPOSITORIES/PUBLICATIONS_CREATOR_COLLECTION", "@type" : "COLLECTION" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Family Name", "rdfs:comment" : "Family Name", "@id" : "openBIS:hasPUBLICATION_CREATOR.FAMILY_NAME", @@ -537,7 +537,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Publication Year", "rdfs:comment" : "Publication Year", "@id" : "openBIS:hasPUBLICATION.PUBLICATION_YEAR", @@ -566,7 +566,7 @@ }, "@type" : "PUBLICATION_CREATOR" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Comments", "rdfs:comment" : "Comments log", "@id" : "openBIS:hasXMLCOMMENTS", @@ -593,7 +593,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Publication Identifier", "rdfs:comment" : "Publication Identifier", "@id" : "openBIS:hasPUBLICATION.IDENTIFIER", @@ -617,7 +617,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Description", "rdfs:comment" : "Description", "@id" : "openBIS:hasPUBLICATION.DESCRIPTION", @@ -635,7 +635,7 @@ "@id" : "https://schema.org/abstract" } ] }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Identifier Scheme", "rdfs:comment" : "Identifier", "@id" : "openBIS:hasPUBLICATION_CREATOR.IDENTIFIER_SCHEME", @@ -646,7 +646,7 @@ "@id" : "PUBLICATION_CREATOR" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Affilition", "rdfs:comment" : "Affiliation Identifier", "@id" : "openBIS:hasPUBLICATION_CREATOR.AFFILITION_IDENTIFIER", @@ -682,7 +682,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Creators", "rdfs:comment" : "Creators", "@id" : "openBIS:hasPUBLICATION.CREATOR", @@ -709,7 +709,7 @@ "@id" : ":Project", "@type" : "rdfs:Class" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Affiliation Identifier Scheme", "rdfs:comment" : "Affiliation Identifier Scheme", "@id" : "openBIS:hasPUBLICATION_CREATOR.AFFILITION_IDENTIFIER_SCHEME", @@ -720,7 +720,7 @@ "@id" : "PUBLICATION_CREATOR" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "@id" : "openBIS:hasSPACE", "schema:rangeIncludes" : { "@id" : "openBIS:Space" @@ -735,7 +735,7 @@ "@id" : "PUBLICATION" } ] }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Type", "rdfs:comment" : "Type", "@id" : "openBIS:hasPUBLICATION.TYPE", @@ -810,7 +810,7 @@ "owl:minCardinality" : 1, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Contributors", "rdfs:comment" : "Contributors", "@id" : "openBIS:hasPUBLICATION.CONTRIBUTOR", @@ -826,7 +826,7 @@ "@id" : "http://datacite.org/schema/kernel-4#doi" } ] }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Publisher", "rdfs:comment" : "Publisher", "@id" : "openBIS:hasPUBLICATION.PUBLISHER", @@ -856,7 +856,7 @@ "owl:minCardinality" : 0, "owl:maxCardinality" : 1 }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Given Name", "rdfs:comment" : "Given Name", "@id" : "openBIS:hasPUBLICATION_CREATOR.GIVEN_NAME", @@ -896,7 +896,7 @@ }, "@type" : "PUBLICATION" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Identifier Scheme", "rdfs:comment" : "Identifier Scheme", "@id" : "openBIS:hasPUBLICATION_PUBLISHER.IDENTIFIER_SCHEME", @@ -910,7 +910,7 @@ "@id" : "http://datacite.org/schema/kernel-4#publisherIdentifierScheme" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Default collection view", "rdfs:comment" : "Default view for experiments of the type collection", "@id" : "openBIS:hasDEFAULT_COLLECTION_VIEW", @@ -924,7 +924,7 @@ "@id" : "PUBLICATIONS", "@type" : "openBIS:Space" }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "openBIS Related Identifiers", "rdfs:comment" : "openBIS Related Identifiers", "@id" : "openBIS:hasPUBLICATION.OPENBIS_RELATED_IDENTIFIERS", @@ -956,7 +956,7 @@ "@id" : "https://schema.org/Publisher" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Default object type", "rdfs:comment" : "Enter the code of the object type for which the collection is used", "@id" : "openBIS:hasDEFAULT_OBJECT_TYPE", @@ -967,7 +967,7 @@ "@id" : "COLLECTION" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Organization", "rdfs:comment" : "Organization", "@id" : "openBIS:hasPUBLICATION.ORGANIZATION", @@ -981,7 +981,7 @@ "@id" : "http://schema.org/Organization" } }, { - "@type" : "rdfs:Property", + "@type" : "rdf:Property", "rdfs:label" : "Creator Identifier", "rdfs:comment" : "Creator Identifier", "@id" : "openBIS:hasPUBLICATION_CREATOR.IDENTIFIER", @@ -997,4 +997,4 @@ "@id" : "https://schema.org/identifier" } ] } ] -} \ No newline at end of file +} diff --git a/0.2.x/lib/java/bin/lib-ro-crate-schema.jar b/0.2.x/lib/java/bin/lib-ro-crate-schema.jar index d999869..3ef8721 100644 Binary files a/0.2.x/lib/java/bin/lib-ro-crate-schema.jar and b/0.2.x/lib/java/bin/lib-ro-crate-schema.jar differ diff --git a/0.2.x/lib/java/src/java/ch/ethz/sis/rocrate/SchemaFacade.java b/0.2.x/lib/java/src/java/ch/ethz/sis/rocrate/SchemaFacade.java index 6a1637f..0554328 100644 --- a/0.2.x/lib/java/src/java/ch/ethz/sis/rocrate/SchemaFacade.java +++ b/0.2.x/lib/java/src/java/ch/ethz/sis/rocrate/SchemaFacade.java @@ -20,7 +20,7 @@ public class SchemaFacade implements ISchemaFacade private final static String RDFS_CLASS = "rdfs:Class"; - private final static String RDFS_PROPERTY = "rdfs:Property"; + private final static String RDF_PROPERTY = "rdf:Property"; public static final String EQUIVALENT_CLASS = "owl:equivalentClass"; @@ -153,7 +153,7 @@ public class SchemaFacade implements ISchemaFacade DataEntity.DataEntityBuilder builder = new DataEntity.DataEntityBuilder(); builder.setId(rdfsProperty.getId()); - builder.addProperty("@type", RDFS_PROPERTY); + builder.addProperty("@type", RDF_PROPERTY); builder.addProperty(RDFS_LABEL, rdfsProperty.getLabel()); builder.addProperty(RDFS_COMMENT, rdfsProperty.getComment()); @@ -321,44 +321,41 @@ public class SchemaFacade implements ISchemaFacade entity.getProperty("@id") .asText(); - switch (type) - { - case "rdfs:Property" -> - { - PropertyType rdfsProperty = new PropertyType(); - rdfsProperty.setId(resolvePrefixSingleValue(id)); + if (type.equals(RDF_PROPERTY) || type.equals("rdfs:Property")) + { + PropertyType rdfsProperty = new PropertyType(); + rdfsProperty.setId(resolvePrefixSingleValue(id)); - rdfsProperty.setOntologicalAnnotations( - parseMultiValued(entity, EQUIVALENT_CONCEPT)); + rdfsProperty.setOntologicalAnnotations( + parseMultiValued(entity, EQUIVALENT_CONCEPT)); - List rawRange = parseMultiValued(entity, rangeIdentifier); + List rawRange = parseMultiValued(entity, rangeIdentifier); - List dataTypes = rawRange.stream() - .filter(LiteralType::isLiteralType) - .map(LiteralType::getByTypeName) - .filter(Objects::nonNull) - .collect(Collectors.toList()); - List types = rawRange.stream() - .filter(x -> !LiteralType.isLiteralType(x)) - .map(this::resolvePrefixSingleValue) - .map(classes::get) - .collect(Collectors.toList()); + List dataTypes = rawRange.stream() + .filter(LiteralType::isLiteralType) + .map(LiteralType::getByTypeName) + .filter(Objects::nonNull) + .collect(Collectors.toList()); + List types = rawRange.stream() + .filter(x -> !LiteralType.isLiteralType(x)) + .map(this::resolvePrefixSingleValue) + .map(classes::get) + .collect(Collectors.toList()); - dataTypes.stream().forEach(rdfsProperty::addDataType); - types.forEach(rdfsProperty::addType); + dataTypes.stream().forEach(rdfsProperty::addDataType); + types.forEach(rdfsProperty::addType); - rdfsProperty.setDomainIncludes( - parseMultiValued(entity, domainIdentifier).stream() - .map(x -> resolvePrefixSingleValue(x)) - .map(classes::get).collect( - Collectors.toList())); - properties.put(resolvePrefixSingleValue(id), rdfsProperty); + rdfsProperty.setDomainIncludes( + parseMultiValued(entity, domainIdentifier).stream() + .map(x -> resolvePrefixSingleValue(x)) + .map(classes::get).collect( + Collectors.toList())); + properties.put(resolvePrefixSingleValue(id), rdfsProperty); - } } - } + for (DataEntity entity : crate.getAllDataEntities()) { String type = entity.getProperty("@type").asText(); diff --git a/0.2.x/schema.shacl b/0.2.x/schema.shacl index 774159f..66b0f7b 100644 --- a/0.2.x/schema.shacl +++ b/0.2.x/schema.shacl @@ -17,12 +17,12 @@ ex:TypeMustBeClassShape sh:property [ sh:path rdf:type ; sh:or ( - [ sh:in (rdfs:Class owl:restriction rdfs:Property schema:Dataset schema:CreativeWork ) ] # Case 1: type is exactly rdfs:Class + [ sh:in (rdfs:Class owl:restriction rdf:Property schema:Dataset schema:CreativeWork ) ] # Case 1: type is exactly rdfs:Class [ sh:class rdfs:Class ] # Case 2: type is a node of type rdfs:Class ) ; #sh:nodeKind sh:IRI ; sh:minCount 1 ; - sh:message "type should be either rdfs:Class or owl:restriction or rdfs:Property or a valid reference to a rdfs:Class or " + sh:message "type should be either rdfs:Class or owl:restriction or rdf:Property or a valid reference to a rdfs:Class or " ] . @@ -59,13 +59,13 @@ ex:ClassDefinitionShape a sh:NodeShape ; #Check the shape of "owl:restriction" ex:OwlRestrictionDefinitionShape a sh:NodeShape; sh:targetClass owl:restriction ; - #owl:onProperty should reference a valid rdfs:Property + #owl:onProperty should reference a valid rdf:Property sh:property [ sh:path owl:onProperty; sh:maxCount 1; sh:minCount 1; sh:nodeKind sh:IRI; - sh:class rdfs:Property ; + sh:class rdf:Property ; ] ; sh:property [ sh:path owl:minCardinality ; @@ -81,7 +81,7 @@ ex:OwlRestrictionDefinitionShape a sh:NodeShape; ] . ex:PropertyDefinitionShape a sh:NodeShape ; - sh:targetClass rdfs:Property ; + sh:targetClass rdf:Property ; #sh:closed true; #sh:ignoredProperties (rdf:type) ; sh:property [ @@ -97,7 +97,7 @@ ex:PropertyDefinitionShape a sh:NodeShape ; sh:path owl:equivalentProperty ; sh:minCount 0 ; sh:nodeKind sh:IRI ; - #sh:class rdfs:Property ; + #sh:class rdf:Property ; ] ; sh:property [ sh:path schema:domainIncludes ; diff --git a/0.2.x/spec.md b/0.2.x/spec.md index f8572a4..8daf527 100644 --- a/0.2.x/spec.md +++ b/0.2.x/spec.md @@ -165,7 +165,7 @@ They also specify, which classes they can interact with. | Type/Property | Required? | Description | |------------------------|-----------|---------------------------------------------------------------------------------------------------------| | @id | MUST | ID of the entry | -| @type | MUST | Is `rdfs:Property` | +| @type | MUST | Is `rdf:Property` | | owl:equivalentProperty | MAY | Ontological annotation https://www.w3.org/TR/owl-ref/#equivalentClass-def | | schema:domainIncludes | MUST | Describes the possible types of the subject. This can be one or many. | | schema:rangeIncludes | MUST | Describes the possible types of the object. This can be one or many. |