sorry gmail seems to have killed that screenshot .. grrr

On Wednesday, July 15, 2020 at 1:18:04 PM UTC+10 Rob Atkinson wrote:

> spoke too soon - here is an example showing the shape, the existence of 
> labels, and the failure to show the label in the Tag search form.
> in addition, filter on  topic doesnt work here either.
>
> (in other news... on a tagset editor its not obvious how to save the 
> default layout - and the question is still how to achieve this result 
> without using the UI - what metadata needs to go where? )
>
>
>
> On Wednesday, July 15, 2020 at 12:53:04 PM UTC+10 Rob Atkinson wrote:
>
>>
>> solved: form makes up a label for topic - it was in fact missing labels 
>> for topics due to a namespace change that didnt get propagated to the 
>> tagset properly.   
>>
>> Lesson - never have labels that match what the system will generate if 
>> missing 
>>
>>
>>
>> On Wednesday, July 15, 2020 at 11:15:34 AM UTC+10 Irene Polikoff wrote:
>>
>>> I think you need to have a shape to declare that corpus:topic is a 
>>> property of metanorma:ClauseSection 
>>>
>>> This could be done for the metanorma:ClauseSection or some parent class 
>>> - I am sure you know this. 
>>>
>>> The form will only display property values for which a property shape 
>>> exist - I suspect you know this as well. 
>>>
>>> If this does not help, send me a small example off the list. 
>>>
>>> > On Jul 14, 2020, at 8:27 PM, Simon Opper <
>>> simon...@surroundaustralia.com> wrote: 
>>> > 
>>> > Hi Irene 
>>> > 
>>> > Are you saying that: 
>>> > 
>>> > • You have a data graph with some information about :Content1 
>>> > Yes 
>>> > • You included into it a content tagset that contains the following 
>>> triples 
>>> > Yes 
>>> >>> :Content1 corpus:topic conceptA 
>>> >>> :Content 1 corpus:topic conceptB 
>>> > Yes 
>>> > • When you click on :Content1 in your data graph, you are not seeing 
>>> the above triples on a form 
>>> > Correct, I'm not seeing the the values. I may want to show the value 
>>> of Content1 or ConceptA depending on the nature of the form e.g. ingoing or 
>>> outgoing reference. 
>>> > 
>>> > If this is correct, what is the type of :Content1? 
>>> > 
>>> > The type of Content1 is an instance of a class 
>>> > 
>>> > <
>>> https://data.surroundaustralia.com/dataset/wiringrules/section/2.5.5.3> 
>>> > a metanorma:ClauseSection ; 
>>> > 
>>> > 
>>> > I am assuming that it has corpus:Document type (directly or 
>>> transitively). If it is the case, then you should see these properties on 
>>> the form. If it has multiple types, you would see a drop down on the form 
>>> (upper right corner), that will let you switch between different views. You 
>>> will see the tag values only if you pick the Document. 
>>> > 
>>> > No, this is my point. When a tagset is created in edg only the 
>>> followoing triples are generated in the graph 
>>> > 
>>> > <
>>> https://data.surroundaustralia.com/dataset/wiringrules/section/2.5.5.3> 
>>> > corpus:topic <
>>> https://data.surroundaustralia.com/dataset/wiringrules/collection/section/concept/arcing-fault-protection>
>>>  
>>> . 
>>> > 
>>> > there is no instance of a corpus:Document instantiated. 
>>> > 
>>> > There is something that forms cannot surface about the relationship 
>>> > 
>>> > Here is an example of something similar - for a data element which has 
>>> two types: 
>>> > 
>>> > Please can you try to make only corpus:topics work. I'm aware of the 
>>> selection of different properties for forms and it doesn't work for 
>>> corpus:topics 
>>> > 
>>> > Many thanks 
>>> > 
>>> > Simon 
>>> > 
>>> > On Wed, Jul 15, 2020 at 9:51 AM Irene Polikoff <ir...@topquadrant.com> 
>>> wrote: 
>>> > Hi Simon, 
>>> > 
>>> > Are you saying that: 
>>> > 
>>> > • You have a data graph with some information about :Content1 
>>> > • You included into it a content tagset that contains the following 
>>> triples 
>>> > 
>>> >>> :Content1 corpus:topic conceptA 
>>> >>> :Content 1 corpus:topic conceptB 
>>> > 
>>> > • When you click on :Content1 in your data graph, you are not seeing 
>>> the above triples on a form 
>>> > 
>>> > If this is correct, what is the type of :Content1? 
>>> > 
>>> > I am assuming that it has corpus:Document type (directly or 
>>> transitively). If it is the case, then you should see these properties on 
>>> the form. If it has multiple types, you would see a drop down on the form 
>>> (upper right corner), that will let you switch between different views. You 
>>> will see the tag values only if you pick the Document. 
>>> > 
>>> > Here is an example of something similar - for a data element which has 
>>> two types: 
>>> > 
>>> > <PastedGraphic-2.png> 
>>> > 
>>> > As you switch between views, you may see different data. 
>>> > 
>>> > In 6.4, there is a new Setting option on the form that will present a 
>>> merged view. 
>>> > 
>>> > 
>>> >> On Jul 14, 2020, at 7:38 PM, Simon Opper <
>>> simon...@surroundaustralia.com> wrote: 
>>> >> 
>>> >> Hi Irene 
>>> >> 
>>> >> Yes, my mistake, it was too early before caffeine 
>>> >> 
>>> >> it should be 
>>> >> 
>>> >> For example, if I have a form in the datagraph that references the 
>>> URL of Content1. How can the above corpus:topic triples be used to generate 
>>> an inference in a form to list all existing tags for Content1 (e.g. Concept 
>>> A and B) ? 
>>> >> 
>>> >> e.g. something like 
>>> >> 
>>> >> Content1 a corpus:Document ; 
>>> >> corpus:hasTopic Concept A ; 
>>> >> corpus:hasTopic Concept B . 
>>> >> 
>>> >> Many thanks 
>>> >> 
>>> >> Simon 
>>> >> 
>>> >> 
>>> >> 
>>> >> On Wed, Jul 15, 2020 at 9:11 AM Irene Polikoff <ir...@topquadrant.com> 
>>> wrote: 
>>> >> I am confused. Do you have conceptA and Content A or is it a typo? 
>>> >> 
>>> >> If ContentA is a corpus:Document, you should see corpus:topic values 
>>> on its form. 
>>> >> 
>>> >>> On Jul 14, 2020, at 5:41 PM, Simon Opper <
>>> simon...@surroundaustralia.com> wrote: 
>>> >>> 
>>> >>> Hi Holger 
>>> >>> 
>>> >>> A simple use case of viewing corpus topics is if the tagset is 
>>> imported into a datagraph. How are the values of the content and 
>>> corresponding tag shown on a form. 
>>> >>> 
>>> >>> E.g. 
>>> >>> Content1 corpus:topic conceptA 
>>> >>> Content 1 corpus:topic conceptB 
>>> >>> 
>>> >>> 
>>> >>> For example, if I have a form in the datagraph that references the 
>>> URL of Content1. How can the above corpus:topic triples be used to generate 
>>> an inference in a form to list all existing tags for Concent1 (e.g. content 
>>> A and B) ? 
>>> >>> 
>>> >>> The only way I've been able to do this is to construct new instances 
>>> of a class with new properties 
>>> >>> 
>>> >>> e.g. something like 
>>> >>> 
>>> >>> Content1 a corpus:Document ; 
>>> >>> corpus:hasTopic Content A ; 
>>> >>> corpus:hasTopic Content B . 
>>> >>> 
>>> >>> But this just leads to a lot of information bloat. 
>>> >>> 
>>> >>> On the fly inferences are preferred. 
>>> >>> 
>>> >>> Cheers mate 
>>> >>> 
>>> >>> Simon 
>>> >>> 
>>> >>> 
>>> >>> 
>>> >>> 
>>> >>> 
>>> >>> On Tue, Jul 14, 2020 at 3:18 PM Rob Atkinson <
>>> rob.at...@surroundaustralia.com> wrote: 
>>> >>> 
>>> >>> Sorry didnt get back to this.. 
>>> >>> 
>>> >>> the shape declaration looks like: 
>>> >>> 
>>> >>> ex:MyClass-pshape 
>>> >>> a sh:PropertyShape ; 
>>> >>> sh:path <http://topbraid.org/corpus#topic> ; 
>>> >>> sh:class skos:Concept ; 
>>> >>> sh:description "Concept used to tag objects in this document" ; 
>>> >>> sh:nodeKind sh:IRI ; 
>>> >>> . 
>>> >>> 
>>> >>> 
>>> >>> the other thing that happens is that if you add topic to the search 
>>> results display as an extra column it is blank - and inspection of the 
>>> network traffic shows the underlying graphql query is returning topic:[] 
>>> incorrectly for everything. 
>>> >>> 
>>> >>> 
>>> >>> 
>>> >>> On Thursday, July 2, 2020 at 5:53:43 PM UTC+10 Holger Knublauch 
>>> wrote: 
>>> >>> Is topic an object property shape or a literal-valued one? (Can you 
>>> show the shape declarations). 
>>> >>> 
>>> >>> Holger 
>>> >>> 
>>> >>> 
>>> >>> 
>>> >>> On 2/07/2020 5:32 pm, Rob Atkinson wrote: 
>>> >>>> 
>>> >>>> { 
>>> >>>> clauseSections(where: { 
>>> >>>> topic: { 
>>> >>>> exists: { 
>>> >>>> label: {pattern: "ID4"} 
>>> >>>> } 
>>> >>>> } 
>>> >>>> }) { 
>>> >>>> rdfs_label 
>>> >>>> topic { 
>>> >>>> label 
>>> >>>> } 
>>> >>>> uri 
>>> >>>> } 
>>> >>>> } 
>>> >>>> 
>>> >>>> => 
>>> >>>> 
>>> >>>> { 
>>> >>>> "errors": [ 
>>> >>>> { 
>>> >>>> "message": "Validation error of type WrongType: argument 
>>> 'where.topic' with value 
>>> 'ObjectValue{objectFields=[ObjectField{name='topic', 
>>> value=ObjectValue{objectFields=[ObjectField{name='exists', 
>>> value=ObjectValue{objectFields=[ObjectField{name='label', 
>>> value=ObjectValue{objectFields=[ObjectField{name='pattern', 
>>> value=StringValue{value='ID4'}}]}}]}}]}}]}' contains a field not in 
>>> 'ClauseSection_where_topic': 'exists'", 
>>> >>>> "locations": [ 
>>> >>>> { 
>>> >>>> "line": 2, 
>>> >>>> "column": 18 
>>> >>>> } 
>>> >>>> ] 
>>> >>>> } 
>>> >>>> ] 
>>> >>>> } 
>>> >>>> 
>>> >>>> 
>>> >>>> 
>>> >>>> 
>>> >>>> 
>>> >>>> On Thursday, July 2, 2020 at 5:24:02 PM UTC+10 Holger Knublauch 
>>> wrote: 
>>> >>>> 
>>> >>>> 
>>> >>>> On 2/07/2020 17:15, Rob Atkinson wrote: 
>>> >>>>> 
>>> >>>>> After some fiddling I can return data from a content tag set 
>>> >>>>> 
>>> >>>>> with a query like this 
>>> >>>>> 
>>> >>>>> { 
>>> >>>>> clauseSections(where: {rdfs_label: {pattern: "def"} 
>>> >>>>> } ) { 
>>> >>>>> rdfs_label 
>>> >>>>> topic { 
>>> >>>>> label 
>>> >>>>> } 
>>> >>>>> uri 
>>> >>>>> } 
>>> >>>>> } 
>>> >>>>> 
>>> >>>>> This successfully returns details from the linked topic. 
>>> >>>>> 
>>> >>>>> But I cant get a query to work the restricts the subjects by 
>>> properties of the topics. I cant find examples of syntax for: 
>>> >>>> The fallback for any type of filter is SPARQL: 
>>> >>>> 
>>> >>>> https://www.topquadrant.com/graphql/graphql-queries.html#sparql 
>>> >>>> 
>>> >>>> Did you try that? 
>>> >>>> 
>>> >>>>> 
>>> >>>>> 1) filtering main object on properties of nested objects 
>>> >>>> Similar to this? 
>>> https://www.topquadrant.com/graphql/graphql-queries.html#where 
>>> >>>>> 2) filtering if a value is present ( _is_null) 
>>> >>>> To check for non-existence of a property, you can probably use 
>>> maxCount 0 
>>> >>>> 
>>> >>>> { 
>>> >>>> concepts(where: { 
>>> >>>> hidden: { 
>>> >>>> maxCount: 0 
>>> >>>> }}) { 
>>> >>>> uri 
>>> >>>> } 
>>> >>>> } 
>>> >>>> 
>>> >>>>> 3) combining (AND and OR) filters 
>>> >>>> Use SPARQL for that. GraphQL isn't meant as a complete replacement 
>>> without "help" - its benefit is simplicity for the average web developer. 
>>> >>>> 
>>> >>>>> 
>>> >>>>> Also, I created property shapes for the subject root class and 
>>> tagging property in order to make this work to retrieve details of , but 
>>> perhaps there is some way of making this happen (I created and ran SHACL 
>>> rules to enforce this.. so its repeatable - but have I duplicated 
>>> something?) 
>>> >>>> Sounds good. The GraphQL engine is based on the presence of SHACL 
>>> definitions, so if no such property shapes exist, the engine will not offer 
>>> GraphQL fields. 
>>> >>>> 
>>> >>>> Holger 
>>> >>>> 
>>> >>>> 
>>> >>>> 
>>> >>>>> 
>>> >>>>> 
>>> >>>>> 
>>> >>>>> 
>>> >>>>> 
>>> >>>>> 
>>> >>>>> 
>>> >>>>> -- 
>>> >>>>> 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 topbraid-user...@googlegroups.com. 
>>> >>>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/topbraid-users/deda2c9b-08c1-4d51-8dfa-cde898e02c04n%40googlegroups.com.
>>>  
>>>
>>> >>>> -- 
>>> >>>> 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 topbraid-user...@googlegroups.com. 
>>> >>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/topbraid-users/23302d9c-5e26-4b11-8449-7491452b402bn%40googlegroups.com.
>>>  
>>>
>>> >>> 
>>> >>> -- 
>>> >>> 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 topbraid-user...@googlegroups.com. 
>>> >>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/topbraid-users/e9612855-1c65-46ec-a443-0543995dee60n%40googlegroups.com.
>>>  
>>>
>>> >>> 
>>> >>> -- 
>>> >>> 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 topbraid-user...@googlegroups.com. 
>>> >>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/topbraid-users/CABfSiRPnHm%3D9Rtj90ooPVeU2ZM4VmfuCh%3DhODqBF4sKFSjw6-A%40mail.gmail.com.
>>>  
>>>
>>> >> 
>>> >> 
>>> >> -- 
>>> >> 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 topbraid-user...@googlegroups.com. 
>>> >> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/topbraid-users/35D6D3A1-B948-4917-9BEC-06FD15498558%40topquadrant.com.
>>>  
>>>
>>> >> 
>>> >> -- 
>>> >> 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 topbraid-user...@googlegroups.com. 
>>> >> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/topbraid-users/CABfSiROSUWbBvp0NgZ4fYKRLqAPwes7Y8vRf%3DpPcjugtwiYJAg%40mail.gmail.com.
>>>  
>>>
>>> > 
>>> > 
>>> > -- 
>>> > 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 topbraid-user...@googlegroups.com. 
>>> > To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/topbraid-users/577AC852-606F-4650-9CF2-DB033730F3B7%40topquadrant.com.
>>>  
>>>
>>> > 
>>> > -- 
>>> > 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 topbraid-user...@googlegroups.com. 
>>> > To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/topbraid-users/CABfSiRNd%2B-BSaxxnjEPczLWc%2BFK6wkuuVMzU1LiOjNEnahPU1Q%40mail.gmail.com.
>>>  
>>>
>>>
>>>

-- 
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 topbraid-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/topbraid-users/7bca4f72-c1b7-4fc0-8c81-e6251a1fb7f1n%40googlegroups.com.

Reply via email to