{"action":"opened","issue":{"url":"https://api.github.com/repos/jamsden/oslc-core-test/issues/19","repository_url":"https://api.github.com/repos/jamsden/oslc-core-test","labels_url":"https://api.github.com/repos/jamsden/oslc-core-test/issues/19/labels{/name}","comments_url":"https://api.github.com/repos/jamsden/oslc-core-test/issues/19/comments","events_url":"https://api.github.com/repos/jamsden/oslc-core-test/issues/19/events","html_url":"https://github.com/jamsden/oslc-core-test/issues/19","id":386339438,"node_id":"MDU6SXNzdWUzODYzMzk0Mzg=","number":19,"title":"TRS base member predicate may introduce incompatibilities with TRS 1.0","user":{"login":"jamsden","id":1114794,"node_id":"MDQ6VXNlcjExMTQ3OTQ=","avatar_url":"https://avatars2.githubusercontent.com/u/1114794?v=4","gravatar_id":"","url":"https://api.github.com/users/jamsden","html_url":"https://github.com/jamsden","followers_url":"https://api.github.com/users/jamsden/followers","following_url":"https://api.github.com/users/jamsden/following{/other_user}","gists_url":"https://api.github.com/users/jamsden/gists{/gist_id}","starred_url":"https://api.github.com/users/jamsden/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamsden/subscriptions","organizations_url":"https://api.github.com/users/jamsden/orgs","repos_url":"https://api.github.com/users/jamsden/repos","events_url":"https://api.github.com/users/jamsden/events{/privacy}","received_events_url":"https://api.github.com/users/jamsden/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-11-30T20:31:08Z","updated_at":"2018-11-30T20:31:08Z","closed_at":null,"author_association":"OWNER","body":"The TRS 1.0 specification did not define a trs:Base class, but rather referred to the object of a trs:base predicate as an \"RDF container\". The Base Resources does not specify and rdf:type for the base resource. The members of this RDF container are captured using rdfs:member predicates. \n\nTRS 2.0 also does not define a trs;Base class, it also refers to the Base resource as the target of the trs:base predicate whose range is specified to be ldp:DirectContainer. The TRS 2.0 spec does define some properties of this unspecified resource type, so when I created the resource shapes for TRS 3.0, I added a trs:Base resource shape that oslc:describes ldp:DirectContainer in order to formerly reflect what was in the 2.0 specification.\n\nIt is not clear what TRS 1.0 implementations exist, but any TRS implementations done using eclipse/Lyo oslc-trs as a reference implementation may not be entirely compatible with TRS 2.0 as specified. It appears oslc-trs does utilize LDP, but it sues ldp:Container, not ldp:DirectContainer (a subclass), and uses rdfs:member, not ldp:member (ldp:member is a subPropertyOf rdfs:member). A TRS provider I recently implemented ([https://github.com/OSLC/iotp-adaptor)](https://github.com/OSLC/iotp-adaptor)) using oslc-trs does produce ldp:Container with rdfs:member, and this base is consumed without any problem by IBM LQE. \n\nSo it appears we have a mixture of container and member specifications that we may need to maintain for backward compatibility."}}
{"actor":{"display_login":"jamsden"}}