W3C

- DRAFT -

RDF Data Shapes Working Group Teleconference

08 Oct 2015

Agenda

See also: IRC log

Attendees

Present
Arnaud, simonstey, hsolbrig, kcoyle, hknublau, aryman, TallTed, dimitris, ericP
Regrets
pfps
Chair
Arnaud
Scribe
kcoyle

Contents


<simonstey> no webex?

simonstey: eric is working on it

has anyone tried calling in? does phone # work?

<simonstey> ah thx

<hsolbrig> I tried and it answers but nothing happens

<Arnaud> this sucks

<hsolbrig> Maybe I should try the porn line instead...

<Arnaud> lol

<simonstey> :D

<simonstey> maybe they have webex?

<Arnaud> now we can either wait patiently for eric to work it out or bug him for updates and delay a potential solution

<Arnaud> I'm torn :)

<ericP> new meeting number: 647 895 586

<Arnaud> and is there a link?

<ericP> https://mit.webex.com/mit/e.php?MTID=mec3916d08593e479cf225a9f3c0cb652

<Arnaud> ah, thanks

<hsolbrig> webex is preparing my meeting...

<Dimitris> I get "The meeting has been cancelled or ended!"

<simonstey> https://mit.webex.com/mit/e.php?MTID=mec3916d08593e479cf225a9f3c0cb652

<Arnaud> new webex: https://mit.webex.com/mit/e.php?MTID=mec3916d08593e479cf225a9f3c0cb652

<aryman> the WebEx links says: The meeting has been cancelled or ended!

<scribe> scribenick: kcoyle

<Dimitris> used the phone number and the voice says the meeting has not started yet

<simonstey> https://mit.webex.com/mit/e.php?MTID=mec3916d08593e479cf225a9f3c0cb652

<simonstey> use that link dimitris

Arnaud: FPWD is out!!!
... was rather painful but we can now set up the automatic publication tool Echidna for future publications

Admin

<Arnaud> PROPOSED: Approve minutes of the 1 October Telecon: http://www.w3.org/2015/10/01-shapes-minutes.html

RESOLUTION: Approve minutes of the 1 October Telecon: http://www.w3.org/2015/10/01-shapes-minutes.html

Raised issues

Arnaud: issues need to be clearly worded as issues - need a problem statement, and include proposed resolution

<Arnaud> PROPOSED: Open ISSUE-98, ISSUE-99, ISSUE-100, ISSUE-101

<simonstey> +1

<TallTed> +1

<Dimitris> +1

ericP: trying to understand #99 - do we currently have .... nevermind

+1

<aryman> +1

<ericP> +1

<hsolbrig> +1

RESOLUTION: Open ISSUE-98, ISSUE-99, ISSUE-100, ISSUE-101

<ericP> i actually kind of like that issues are just there for a proposal are clear about it

PROPOSED: Close ISSUE-95, adopting Holger's proposed simplifications

<simonstey> "It is not about inheritance between non-classes. I thus vote against this change. The first change that needs to be done is to replace the use of rdfs:subClassOf."

ISSUE-95

<trackbot> ISSUE-95 -- Proposed simplification and clean up of template mechanism -- open

<trackbot> http://www.w3.org/2014/data-shapes/track/issues/95

<simonstey> https://lists.w3.org/Archives/Public/public-data-shapes-wg/2015Oct/0059.html

<Arnaud> https://lists.w3.org/Archives/Public/public-data-shapes-wg/2015Oct/0037.html

aryman: previously raised issue that there are many abstract classes - which is an implementation issue, not a vocabulary
... but I don't know if this proposal solves that

Arnaud: could we still use this after solving Peter's issue?

hknublau: wanted to get rid of abstract super-classes, and duplication (regular and inverse)
... this proposal represents all of those with a single function - decreases size of turtle file - and easier to define templates

<aryman> webbed just dropped my line

<aryman> s /webbed/webex/

<Labra> +present labra

hknublau: function only contains comparison of values - peter seems to be writing about a next step after this

Arnaud: this is orthogonal to subclass objection

<aryman> dropped again

hknublau: use of subclassOf means that instances of those templates use the same inheritance mechanism -- so it technically makes sense

<simonstey> I guess peter wants to have the subclassof issue resolved before dealing with issue 95

hknublau: but there is a second place using inheritance - allows connecting multiple constraint types together - this one has been removed

Arnaud: this will be back on the agenda next week

<aryman> back

aryman: I missed Holger's statement

Arnaud: summary is that Holger has already diminished use of subclassOf

ISSUE-91

<trackbot> ISSUE-91 -- Default Cardinality in property constraints -- open

<trackbot> http://www.w3.org/2014/data-shapes/track/issues/91

<simonstey> pfps: I vote +1 for resolving ISSUE-91 in a way that does not require default values for cardinalities, i.e., min 0 and max unbounded. I vote -1 for other ways of resolving ISSUE-91.

Arnaud: issue 91 raised by Harold; resolved already by issue 59
... side issue: whether it's ok to have default values that cannot be explicitly stated
... this could be a separate issue

hsolbrig: prompted by statement in another thread, that cardinality is the same as uml - but that isn't so (uml is 1,1); in xml schema it's 1,1, but for an attribute it's 0,1
... 0..* is the least likely default
... the advantage of 0..* -- answer to this is: always state cardinality

<ericP> i don't think 0..* is the least likely; 13..267 narrowly edges it out for rareness

<hsolbrig> fair enough.

Arnaud: There is no "most" case

<aryman> dropped again

aryman: the analogy with uml is not valid; this is a constraint language; default makes sense when you have required properties and need a default

<Arnaud> are you using the client or the phone?

<Arnaud> maybe you can call the phone # directly?

<aryman> I ws saying that in SHACL we deal we conjunctions of constraints, so if a constraint is absent it is not necessary to give its parameters default values

<simonstey> [20:00] <ericP> new meeting number: 647 895 586

<aryman> an absent constraint simply makes no contribution

<aryman> in the case of cardinality, this gives the same result as saying min/max have defaults 0/*

Arnaud: zero / unbound are not defaults? these are defaults

<aryman> will skype in

ericP: zero...* don't contribute constraints

TallTed: not true that they don't contribute

there's a constraint when shape is closed

simonstey: originated because Karen wanted way to say max count is unbounded; no way to say max=unbounded, only can leave it off
... would vote for zero to unbounded but not 1,1.

<TallTed> I think we *must* be able to express unbound if this is *not* the default; we *should* be able to express it if it *is* the default.

<ericP> kcoyle: the defaults do make a difference when the shape is open vs. closed

<ericP> ... if the shape is closed, any properties that aren't mentioned are effectively closed.

<ericP> ... but if it's open, the 0..* does nothing

ericP: argument for 1,1 -- consistent with UML and RELAXng.
... other schema languages think this is what users want

aryman: rdf data is different from OO data structures; when we put cardinality constraints on property we found we needed to relax it

<simonstey> +1 to arthur's point wrt. RDF data vs OO ds, was about to say that

aryman: if you just want o mention a property you don't have to give it cardinality; you would have to with 1,1

<Arnaud> PROPOSED: Close ISSUE-91, keep 0 and unbound as defaults, in line with resolution of ISSUE-59

<simonstey> +1

<hknublau> +1

<Dimitris> +1

<aryman> +1

+1

<hsolbrig> +0

<TallTed> +1

<ericP> +0

<Labra> -0.5

RESOLUTION: Close ISSUE-91, keep 0 and unbound as defaults, in line with resolution of ISSUE-59

ISSUE-57

<trackbot> ISSUE-57 -- Cardinalities on expressions or groups of triple constraints -- open

<trackbot> http://www.w3.org/2014/data-shapes/track/issues/57

<simonstey> pfps: Cardinalities on groups of constraints is a decided increase in expressive power for SHACL. Is there a semantics for this added expressive power that is compatible with the rest of SHACL and can be effectively implemented? Without this I vote -1 for adding the construct.

Labra: it is not possible to express cardinality on groups in SHACL, but it is allowed in ShEx
... validation may be more complex, but ShEx has managed to define the algorithms
... extends the expressiveness of SHACL and it is useful

hknublau: can be expressed in QCRs; in a value shape it's an or?

ericP: can first example using personShape be done in SHACL?

Arnaud: Peter's comment puts burden on Jose to develop algorithm/formal definition

aryman: second eg: equivalent to at least one of resolutions ... this could be done with QCC.

Arnaud: 1) needs to be demonstrated if it can be done and see what it would look like 2) need to define better the semantics of this.
... possibly do first point first
... leave it as is? (silence)

aryman: don't know if existing QCC is adequate/ but "partition" might do it

simonstey: i think the examples are expressible in SHACL if we approve node constraint from Holger; constraints that work on the specific focus node itself
... these would be used with and/or; but this requires that we are directly working on a focus node that adheres to a specific shape

Arnaud: first explore the already proposed options (focus node, partition)

<ericP> +1 to the semantics being obvious

Labra: goal is to translate from ShEx to SHACL w/out loss

Arnaud: yes, this relates to the user-friendly language

ISSUE-86

<trackbot> ISSUE-86 -- Associating shapes with ontologies or vocabularies -- open

<trackbot> http://www.w3.org/2014/data-shapes/track/issues/86

Dimitris: If i'm developing a standard like SKOS and everyone needs to use the same constraints, then I want a way to put constraints in the same document
... but others may not want shapes in the data graph
... have 3 options: in line or imports
... or shapes graph

<Dimitris> 3 options: inline with the ontology definition, link them with owl:imports or us sh:shapesGraph

aryman: Dimitris: you say you want to force constraints on all users of a vocabulary; you can already link a shape to a class via shapeClass
... ? is that not enough? eg any uses of a property have to use constraints

Dimitris: this is about discoverability, link from vocab to shapes

hknublau: first two options are fine; in same file or use OWL import; if shape declarations are part of data graph, that's ok because they are valid shacl
... you can also exclude validation of shapes themselves
... rcommend either directly in data graph or use owl imports

Dimitris: objection is from shapes graph to ontology graph

Arnaud: Dimitris: write down a specific proposal, and we can react to it

aryman: didn't we say that owl imports is the preferred way to combine arbitrary rdf

Dimitris: when you use owl imports, then you have graph with shapes and data
... and shapes are not meant to be data

,,, need to be able to mix or not mix, as needed

scribe: need to be able to mix or not mix, as needed

aryman: agree you don't want shapes mised with data graph - but didn't you want a link from the ontology to data graph, so why is shapes graph different?
... we could use shapesGraph to link shape to data
... use shapesGraph to link vocabulary to shape
... don't overload shapesGraph; define another term that goes from a vocabulary to a shape
... ? from vocabulary or from class? Can be from a class node to a shape or from an ontology to a shape

Arnaud: Dimitris will make a proposal and discussion will continue

ISSUE-92

<trackbot> ISSUE-92 -- Should repeated properties be interpreted as additive or conjunctive? -- open

<trackbot> http://www.w3.org/2014/data-shapes/track/issues/92

Arnaud: proposals from Holger (small addition that will address this use case); arthur introduced concept of partitions.

<Zakim> ericP, you wanted to describe the usability issue

ericP: original motivation is that when you repeat properties in SHACL they are conjunctive; all constraints on all proeprties must be met
... experience at Dublin Core was that people expected a different behavior - predicate+value are different "things"
... arthur's proposal would result in the expected behavior
... would like to see something like arthur's proposal but applied as: for any time we see two properties, not a separate constraint

aryman: nervous about eric's proposal because clauses not ordered and more than one could match
... overhead of checking all combinations
... however, all languages allow users to do expensive operations
... if triples are treated as sets, then we must introduce order
... for triples, sequence of separate constraints with cardinality on them; this would be more efficient -- would be sequential
... hopefully sequenced approach won't miss many possible cases

<Zakim> ericP, you wanted to say that the complexity only arises when you actually have triples that intersect

aryman: my proposal also deals with objections to qcc - this naturally gathers statements

ericP: the complexity only arises when you are taking advantage of it - when instance data only fits one or the other it isn't so complex
... wondering if it's possible to say that the behavior when things are in the intersection of multiple constraints is undefined
... we have implementations of shex using three different algorithms of this (mapping to different algorithsm) and they all pass the same tests
... not terribly hard to implement

<Arnaud> https://lists.w3.org/Archives/Public/public-data-shapes-wg/2015Sep/0146.html

Arnaud: question re clarifying current specification
... discussion between Irene and Eric -- example from Irene w constraints on age
... eric suggested grouping them into a single constraint

<simonstey> or you use sh:AndConstraint ;)

Arnaud: there are two ways currently to combine - put them in the same property constraint, gets conjunction
... or could use explicit AND constraint
... language provides different ways to get same result
... couldn't one of these be changed to eric's way?
... 3 ways to get conjunction?

hknublau: yes
... qcrs would go away with arthur's proposal

aryman: processors would treat as conjunction -- all constraints need to be satisfied
... if we had a way to satisfy eric's requirements, we should make a rule then that you cannot repeat predicate

Arnaud: so why can't we treat multiple constraints as additive?

<Arnaud> <S> sh:property [

<Arnaud> sh:predicate :age ;

<Arnaud> sh:minInclusive 4 ;

<Arnaud> sh:maxInclusive 19

<Arnaud> ] .

aryman: we could; my only objection is implied computaitonal complexity

<Arnaud> <S> sh:property [

<Arnaud> sh:predicate :age ;

<Arnaud> sh:minInclusive 4 ;

<Arnaud> ] .

<Arnaud> <S> sh:property [

<Arnaud> sh:predicate :age ;

<Arnaud> sh:maxInclusive 19

<Arnaud> ] .

<aryman> Arnaud you are breaking up

<TallTed> Arnaud's voice is broken badly

<simonstey> arnaud you are breaking up

<Arnaud> sorry about the sound problem

ericP: computaitonal complexity for eric's and arthur's is same for main use cases;

<Arnaud> we're out of time, so please let's clear the queue and leave it at that for today

ericP: I started out with conjunctive semantics but got pushback from users

<simonstey> -q

aryman: above example -- doesn't work with additive semantics;

ericP: this isn't a good example; multiple constraints would naturally go in the same triple constraint

hknublau: shouldn't change behavior; interacts badly with other cases; can use qcr's for this, or could go further with arthur's proposal

<hknublau> (other cases being inheritance/subclassof)

<Arnaud> trackbot, end meeting

Summary of Action Items

Summary of Resolutions

  1. Approve minutes of the 1 October Telecon: http://www.w3.org/2015/10/01-shapes-minutes.html
  2. Open ISSUE-98, ISSUE-99, ISSUE-100, ISSUE-101
  3. Close ISSUE-91, keep 0 and unbound as defaults, in line with resolution of ISSUE-59
[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.143 (CVS log)
$Date: 2015/10/23 20:28:50 $