Solution to Load pre set default saved searches and layouts to multiple assets at once

34 views
Skip to first unread message

Simon Opper

unread,
Jan 25, 2022, 1:17:57 AM1/25/22
to TopBraid Suite Users
G'day there TQ

We have an automated process to deploy many assets at once and I would like to instantiate new EDG assets with both a pre set default search and also a default layout.

The problem requiring a better solution is that we are creating many many  (100s)  different asset datagraphs, content tagsets, taxonomies for many different user groups and users. Having to either as an admin, or the users, to manually add/save, saved searches and layouts is not workable.


1.  search
For the default search e.g.  in a tagset on the search panel to show a chosen column

I've deduced that the search config is written to the main TDB.trig, and added as a set of triples on the relevant .tch graph of the asset.

I can add the config for a "saved search"  (see example below) to an ontology that is imported in my content tag sets... winner.. the saved search appears in the "search list".... cool.

 <urn:x-search:81e11db0-757f-4d80-bbbc-66473ea6bc7d>
            a           <http://teamwork.topbraidlive.org/graphql.search#GQLSearch> ;
            rdfs:label  "Search Content Text" ;
            <http://teamwork.topbraidlive.org/graphql.search#appState>

                   ### bunch of blah blah config removed for brevity..... " ;

            <http://topbraid.org/search#creator>
                    <urn:x-tb-users:simonopper> ;
            <http://topbraid.org/search#rootType>
                    <http://purl.org/spar/doco/Section> ;
            <http://topbraid.org/search#timestamp>
                    "2022-01-25T14:35:38.300244"^^xsd:dateTime .

But if I add the triples for the "default search", which appears simply as a blank node with exactly the same data  (see code below) as the "saved search", again in the TDB.trig and in the relevant .tch graph,   it does not appear to be "registered" as the default search.

[ a       <http://teamwork.topbraidlive.org/graphql.search#GQLSearch> ;
      <http://teamwork.topbraidlive.org/graphql.search#appState>
             
         ### bunch of blah blah config removed for brevity..... " ;

      <http://topbraid.org/search#creator>
              <urn:x-tb-users:simonopper> ;
      <http://topbraid.org/search#rootType>
              <http://purl.org/spar/doco/Section> ;
      <http://topbraid.org/search#timestamp>
              "2022-01-25T14:35:44.189822"^^xsd:dateTime
    ] .

I assume there is something going on deeper in the system registries that needs to be triggered to instantiate the search as the default.?

Is there are trick to getting this to work ?

2.  Default layout

Default layouts seem to require a similar instantiation/registration process.

the short question is can a layout be included in an ontology, which is in turn included in all the various assets so that it loads as the default layout AND is loaded on the very first open event of the asset (see my comment further below). 

Since the layouts are kept in the Repositories/urn_x-evn-user-data.xdb file I'm not sure of the best way to add the data. 

A  test of a few approaches of adding manual triples in the asset graph, or in localhost on the user-data.xdb file did not work and it seems to need some instantiation trigger. 

Also, please note, my testing indicates that even though a default layout can be saved and set for all assets of a given type, that each user still must load that default layout on at least one asset of that type for it to be loaded in others :( .  This has caused a lot of bother to our users. It's a low level kind of config that many forget about and is compounded by the fact that if the asset is deleted ( the urn graph dropped), but re-instantiated by our deployment loader,  the layout must again be reloaded as the default next time round, which is a bit cruddy.


Any pro tips would be much appreciated. We are beginning a new project that will need to deal with the same set of UI layout configuration issues at a bigger scale and on multiple dev, test and prod instances of EDG at once. So a scalable solution workflow is our end state requirement.

Many thanks in advance

Simon

Pat Doyle

unread,
Jan 25, 2022, 10:31:03 AM1/25/22
to TopBraid Suite Users
Hi Simon,

This may not fully answer your question, but I have two comments that may help.


Are you familiar with the Layouts page link on the Server Admin page(Under the User Data heading)?  This provides mechanisms to import, export, reset and refresh default/named layouts. 



A  test of a few approaches of adding manual triples in the asset graph, or in localhost on the user-data.xdb file did not work and it seems to need some instantiation trigger. 

Also, please note, my testing indicates that even though a default layout can be saved and set for all assets of a given type, that each user still must load that default layout on at least one asset of that type for it to be loaded in others :( .  This has caused a lot of bother to our users. It's a low level kind of config that many forget about and is compounded by the fact that if the asset is deleted ( the urn graph dropped), but re-instantiated by our deployment loader,  the layout must again be reloaded as the default next time round, which is a bit cruddy.

This may be related to our mechanisms for saving a user's updates/further modifications to the default layout in local storage.  We have a button in the editor(under the ellipsis in the header) to 'clear locally stored settings' - I would guess if you click this and then have the user go to a new collection, they'd pull the newly updated default layout from the server rather than using the saved local copy of the previous layout. 




Any pro tips would be much appreciated. We are beginning a new project that will need to deal with the same set of UI layout configuration issues at a bigger scale and on multiple dev, test and prod instances of EDG at once. So a scalable solution workflow is our end state requirement.

Many thanks in advance

Simon

--
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/515a8fe4-16e7-48ce-969e-f3ae95b8a762n%40googlegroups.com.

Simon Opper

unread,
Feb 9, 2022, 8:54:53 PM2/9/22
to TopBraid Suite Users
thanks very much for the reply and info

I've tried using the layout refresh in the admin settings, but yes as you indicate this still does not initiate the default layout for all users for their first visit to an asset collection.

In general, I feel that the layout management saved sparql queries and saved searches functions do need some work from TQ. 

 Being able to save these resources, but then not be able to manage them as first-class objects ( e.g. edit, update and re-scope for graphs/roles) seems ineffective and limits the scalability with respect to the potential control of the governance regimes possible. 

I would very much welcome a set of dedicated user data xdb management functions.

However, as always the improvements and upward trajectory of EDG is stellar ! :)

Many thanks in advance

Simon



Reply all
Reply to author
Forward
0 new messages