oslc-core message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: Re: [oslc-core] Fwd: [lyo-dev] [oslc-core] Checking compliance of a resource with multiple resource shapes
- From: "Nicholas Crossley" <nick_crossley@us.ibm.com>
- To: "OASIS OSLC Core TC Discussion List (oslc-core@lists.oasis-open.org)" <oslc-core@lists.oasis-open.org>
- Date: Thu, 27 Jul 2017 06:06:23 -0700
A typical example of where multiple shapes
can apply to a single type of resource is found in the shapes for creation
factories, query capabilities, and instance shapes. A shape on a creation
factory can indicate the properties required to create a new instance of
a class using that factory, where a shape on a query capability may indicate
a potentially wider set of properties you might see on previously existing
resources of that type, and the shape on an instance may indicate the properties
allowed in the current state of that instance and/or required to progress
to the next state in the lifecycle. Creation factories and query capabilities
have oslc:usage properties that help define the context in which they can
be used, and hence the contexts in which those shapes are applicable.
Unfortunately, at least in my mind,
there is no good way for a client to determine the intended meaning of
multiple instance shapes on a single resource. The 2.0 specs and related
notes do not say much at all about this. The 3.0 specs are explicitly vague!
They say:
If more than one shape applies to a resource
then that resource shouldsatisfy all the constraints defined by all the shapes (AND semantics).
However, the specification for a service description maydefine alternate semantics. For example, a service mayrequire that the resource satisfy the constraints defined by at least one
of the shapes (OR semantics).
However, there is no defined way for
a service to tell a client which semantics are intended.
I do think we could improve this. For
example, perhaps a resource shape should have an optional oslc:usage property
that help define the context in which they are applicable, and perhaps
a service should have some defined way to describe the meaning of multiple
instance shapes with the same or no usage.
Nick.
From:
"Jim Amsden"
<jamsden@us.ibm.com>
To:
Andrii Berezovskyi
<andriib@kth.se>
Cc:
"OASIS OSLC Core
TC Discussion List (oslc-core@lists.oasis-open.org)" <oslc-core@lists.oasis-open.org>
Date:
07/26/2017 12:46 PM
Subject:
Re: [oslc-core]
Fwd: [lyo-dev] [oslc-core] Checking compliance of a resource with multiple
resource shapes
Sent by:
<oslc-core@lists.oasis-open.org>
Andrew,
This is a common misinterpretation of what ResourceShapes mean. A ResourceShape
does not define the structure of an OWL Class, rather it constrains property
assertions involving that class in a context.
The reason a resource can have more than one instance shape is because
the resource could be used in different contexts, each requiring different
constraints. If there is more than one instance shape in the same context,
and they are conflicting, the this would be considered a validation (but
not structural) error or warning, depending on the context and how the
application is using the resources.
OSLC domain vocabularies are intentionally under-specified: there are no
domain and range or other assertions about the properties. The intention
was to keep the vocabularies minimal, simple, flexible, and easily constrained
for different purposes using ResourceShapes.
There are however common ResourceShape usage patterns that are in fact
intended to constrain the "shape" of an OWL class so that it
adheres to a specific structure for persistence, marshalling to static
structured classes in programming languages, building queries, etc.
Jim Amsden, Senior Technical Staff Member
OSLC and Linked Lifecycle Data
919-525-6575
From: Andrii
Berezovskyi <andriib@kth.se>
To: "OASIS
OSLC Core TC Discussion List (oslc-core@lists.oasis-open.org)" <oslc-core@lists.oasis-open.org>
Date: 07/26/2017
11:22 AM
Subject: [oslc-core]
Fwd: [lyo-dev] [oslc-core] Checking compliance of a resource with multiple
resource shapes
Sent by: <oslc-core@lists.oasis-open.org>
Forwarding it here as somebody might be able to provide better feedback.
–Andrew.
(sent from my phone)
---------- Forwarded message ----------
From: "Leonid Mokrushin" <leonid.mokrushin@ericsson.com>
Date: Wed, Jul 26, 2017 at 5:02 PM +0200
Subject: [lyo-dev] [oslc-core] Checking compliance of a resource with multiple
resource shapes
To: "Lyo project developer discussions" <lyo-dev@eclipse.org>
Hello,
I just had a discussion with Andrew regarding how to correctly interpret
a following situation:
* An OSLC resource is allowed to have multiple oslc:instanceShape properties
(see https://tools.oasis-open.org/version-control/svn/oslc-core/trunk/specs/resource-shape.html#instanceShape).
* Imagine there are two resource shapes associated with a resource (using
oslc:instanceShape) that describe the same property (let's say dcterms:title).
1) If these two descriptions are identical, I don't see any problem.
2) But, what if these two descriptions contradict each other? Let's say
one declares that cardinality of dcterms:title should be oslc:Zero-or-one
and another - oslc:One-or-many.
Shall an implementation consider 1) to be an OK and 2) to be an error,
or both to be an error, or some other interpretation should be applied?
/Leo[attachment "ATT00001.txt" deleted by Jim Amsden/Raleigh/IBM]
---------------------------------------------------------------------
To unsubscribe from this mail list, you must leave the OASIS TC that
generates this mail. Follow this link to all your TCs in OASIS at:
https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]