Hi Emily,

I am not sure I understand the question. OWL is OWL and SHACL is SHACL.  They 
are different languages with different semantics. OWL is based on the Open 
World Assumption and SHACL is not.

You can combine OWL axioms and SHACL constraints and rules in the same RDF 
graph if this is what you mean by “using together”.

There are similarities between SHACL and OWL and you can find constraint 
components in SHACL that are similar to certain OWL restrictions. If your 
question is “what in SHACL would be similar to the OWL allValueFrom and 
someValuesFrom restrictions", then:

For allValuesFrom, if values are resources, use sh:class - this means that all 
values must be members of the specified class. If values are literals, use 
sh:datatype.

OWL someValuesFrom is simply a short hand for a qualified cardinality 
restriction with min = 1. In other words, at least one value must satisfy the 
restriction, others could be different. In SHACL, you could use qualified value 
shapes for something similar to the qualified cardinality restrictions. See 
https://www.w3.org/TR/shacl/#QualifiedValueShapeConstraintComponent 
<https://www.w3.org/TR/shacl/#QualifiedValueShapeConstraintComponent>.

There is no short hand for someValuesFrom in the spec, we we have defined 
dash:hasValueWithClass in the dash (http://datashapes.org/dash) namespace. You 
can find it at http://datashapes.org/dash.ttl <http://datashapes.org/dash.ttl> 
and some documentation at http://datashapes.org/dash 
<http://datashapes.org/dash>. 

You can also take a look at the mapping from OWL to SHACL that is used by 
TopBraid to auto-generate SHACL from RDFS/OWL. It is described in 
https://www.topquadrant.com/from-owl-to-shacl-in-an-automated-way/ 
<https://www.topquadrant.com/from-owl-to-shacl-in-an-automated-way/>. For the 
most up to date version of the rules, see the file in the workspace.

Regards,

Irene


> On Jun 29, 2020, at 6:47 PM, Emily Zhang <[email protected]> wrote:
> 
> Hi Irene,
> Just wondering if I can use SHACL and the OWL function "allvaluesfrom" or 
> "somevaluesfrom" together? I do see there is "hasvalue" function embedded in 
> the SHACL file, however, I didn't find the other two functions.
> Thanks,
> Emily
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "TopBraid Suite Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] 
> <mailto:[email protected]>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/topbraid-users/89d3bec0-016d-4696-80a0-73fa467cdf98o%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/topbraid-users/89d3bec0-016d-4696-80a0-73fa467cdf98o%40googlegroups.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"TopBraid Suite Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/topbraid-users/2411C379-D42E-45EE-B94D-FF38E403CCE3%40topquadrant.com.

Reply via email to