We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

ANDS Vocabulary Widget

00:00

Formal Metadata

Title
ANDS Vocabulary Widget
Title of Series
Number of Parts
23
Author
License
CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
A recording of a presentation from Richard Walker (ANDS) for the September 2017 AVSIG meeting. Richard discusses the ANDS Controlled Vocabulary Widget, which enables the addition of data classification capabilities to data capture tools through the ANDS Vocabulary Service.
Service (economics)BitContext awarenessRight angleMereologyJust-in-Time-CompilerService (economics)Computer fontGUI widgetJSONUML
Content (media)Electric currentContext awarenessBitComputer fontProcess (computing)GUI widgetContext awareness
RootWordContext awarenessValidity (statistics)Field (computer science)Software developerTheory of relativityValidity (statistics)Field (computer science)Cartesian coordinate systemSelectivity (electronic)Context awarenessService (economics)Web 2.0Web-DesignerForm (programming)Bit
MetadataWindows RegistryFile formatService (economics)Standard deviationField (computer science)GUI widgetCodeRow (database)NumberField (computer science)MetadataWindows RegistryGUI widgetElement (mathematics)Front and back endsService (economics)Game controller
Data typeType theoryDrop (liquid)MereologyMetropolitan area networkMetadataGUI widgetTouchscreenWeb applicationGame controllerSoftware
Data typeType theoryNumberElectronic mailing listSource codeDifferent (Kate Ryan album)
Level (video gaming)Asynchronous Transfer ModeField (computer science)Point (geometry)WordSign (mathematics)GUI widgetSelectivity (electronic)Network topologyType theory
Term (mathematics)Type theoryDrop (liquid)Asynchronous Transfer ModeField (computer science)GUI widgetInsertion lossXMLProgram flowchart
Electric currentComputer iconWeb pageLatent heatGUI widgetView (database)Rule of inferenceAsynchronous Transfer ModeNetwork topologyHierarchyCodeNetwork topologyLibrary (computing)Category of beingBitSlide ruleResultantSampling (statistics)Link (knot theory)QuicksortRevision controlFamilyServer (computing)CASE <Informatik>Asynchronous Transfer ModePoint (geometry)CuboidComputer iconWeb pageLatent heatFocus (optics)Boilerplate (text)HierarchyGUI widgetView (database)Selectivity (electronic)Rule of inferenceDemo (music)Arithmetic meanNumberElectronic mailing listCross-site scripting
Network topologyAsynchronous Transfer ModeElectronic visual displayHierarchyComplete metric spaceCore dumpEuler anglesFunction (mathematics)Event horizonGame theoryCodeInformationOrder (biology)Network topologyInformation managementPositional notationCategory of beingComputer configurationAnalytic setBitFunctional (mathematics)MereologyResultantCore dumpElectronic visual displayLink (knot theory)QuicksortSystem callSimilarity (geometry)Matching (graph theory)Arrow of timeAsynchronous Transfer ModeField (computer science)Musical ensembleComplete metric spacePoint (geometry)CuboidVariety (linguistics)Set (mathematics)Web pageElectronic mailing listBoilerplate (text)HierarchySource codeEvent horizonGUI widgetKey (cryptography)Front and back endsLengthRight angleService (economics)Demo (music)Type theoryDrop (liquid)Absolute value
Transcript: English(auto-generated)
Hello everyone. A bit of context about where this fits into ANDS. Right in the middle, reliable services. So at least we hope they're reliable and pretty much they are. So the vocabulary widget is part of our offerings associated with research vocabularies Australia.
So let's get right into it. Here's an outline of the talk. I'm going to describe what problem this solves and what motivates the work that we've been doing on the vocabulary widget. A little bit of the history, a very brief overview of the current offerings and then go into some more details and then an invitation to you to go ahead and use it.
So broad context here is somewhat more general than what you've just been hearing about. This is the very broad context of consuming a vocabulary and my colleague Joel Ben tells me I need more pictures. So here's a picture of vocabulary consumption which I hope you will enjoy later. Let's move on because text is actually better.
Broad context consuming a vocabulary, more specifically concept selection. So the incorporation of a manual, that is a human being, selecting a concept. Being able to do that within a service. Applications I'm sure you can think of. Data classification,
validation, data validation, use in search fields etc etc etc. Very specifically we want to make it easy for web developers to get started with concept selection incorporated in their own services web forms. It is very much a get started but there's a lot of flexibility
for you to go further. So I'll show how that works a bit later on. A bit of history. The widget is something that we built some years ago to serve our own needs and it's
something that we then opened up and made it more generally available. In particular it services Research Data Australia and not the portal but the back end of it which you call our registry. It's a metadata registry and in particular manual entry of metadata. That manual entry of metadata is drawn from two main vocabularies but
three, four. The main one is our own metadata schema which is an XML schema with CS that has some controlled vocabularies associated with it. So a number of the metadata elements
have their values drawn from controlled vocabularies. An example of that. But also we use that our famous fields of research vocabulary as well and that's used extensively for subject entry. Records. When you enter a record into Research Data Australia we ask you to provide
some subject keywords and they're drawn from what we encourage FOR but you can also provide the SEO keywords and GCMD etc. We then subsequently released a controlled vocabulary widget, the code, which you could then use against three vocabularies. The revcs vocabulary and the
but what we've done is subsequently released Research Vocabularies Australia and our partners have been madly publishing vocabularies in RVA and the widget is there and you can use it against
any of the published vocabularies that are what we call widgetable of which there are almost 100 as of now. Let me show you some screenshots very quickly of our own internal use of the widget. So this is, if you've used the metadata entry screens this should be familiar to you,
if not doesn't matter. But they're just some examples of how we use it ourselves. When you're defining a manual, manually entering a collection in RVA there's a dropdown here you see to select the type of collection data set software publication etc and that
drop down is published from one of the part of the controlled vocabularies for revcs. Similarly the subject type, when you're entering subjects you can enter subjects from a number of different sources and that list of sources is also in the vocabulary and here's an example of
actually entering a subject this also is driven by the vocabulary widget this is the F.O.R vocabulary and this is shown in tree mode and as you would expect the little plus signs to the left of the keywords open up the next level down and there's three levels of
vocabulary there. So if you're entering a field of research keyword you'll use the widget in tree mode at that point if you're entering if instead of selecting F.O.R you'd select GCMD you'll have to type it in at least a few a few letters and this is now the widget in search mode
and then you get a drop down with some suggestions based on well not suggestions matches that against what you've typed in and then you click on the one that you want and it inserts it into the into the field for you. So that's how we consume vocabularies ourselves in DA using the vocabulary widget. I want to just introduce what we are offering more broadly
through research vocabularies Australia and if you haven't seen it already I hope you check it out have a look there are over 100 well over 100 vocabularies published through RBA of which almost 100 are in this widgetable category
and also if you don't if you think you might be interested in publishing through RBA but you're not quite ready to make it accessible to the world we have it we have a demo server as with RDA you can you can publish things try things out on a demo server
vocabulary widget that's the main focus of this talk how do you find out about what is widgetable well you can use the browse facility on search facility in RBA and you will find that your browse or search results have this little icon that says widgetable that points you at the vocabularies that might be suitable for you to use there's an example search there so
all of these links you'll find in the presentation and you'll be able to download that after the after the session and try these links out or indeed try your own searches we do embed the widget in every view page of every widgetable vocabulary so again another
example that you can try later that is our own version of rifcs in RBA and you'll see an example i've got a screenshot on the next on the next slide as well we have a widget explorer which is a wizard that will generate both boilerplate and some or provide you with the boilerplate
that you need and generate some customized code that you can use to get started with the widget and of course we have documentation and there's a link to the documentation pages as well there the documentation will help you to get started with other modes of the widget that are not
readily accessible through the widget explorer and help you to do further customizations so the widget it's a selection widget it's for vocabularies that are published in RBA there is javascript a little javascript page that you link to and css and css the css is
particularly basic and feel free to do all sorts of fancy things with that or just not use it use your own css if you prefer the library is implemented using also using jquery although we we've heard from some of our users that they don't like jquery i can't understand why but
apparently some people don't and sorry about that but that seems to be a showstopper for some people so you embed links to the javascript and the css in your page and then you add a little bit of an extra little bit of javascript to invoke the widget and you select the vocabulary
you want to use and the widget mode that you want to use so what i've got here is a screenshot from a view page that shows an example of the widget and so if you do if you do come across a vocabulary that you like and you want you say i want to use that in my page you'll see already a button that you can press to get a sample code fragment to copy paste into your page
and a link to the documentation and a link to the boilerplate code that you'll also need there are some ground rules so this only works for vocabularies that we call widgetable which for now means a vocabulary that has linked data endpoints linked data API
endpoints which thanks to Simon in the sysfoc family of endpoints so concepts and narrower and top concepts basically it means you publish your vocabulary in rva and you
check the check boxes to import into sesame and publish through sysfoc and then your vocabulary we will we will call that widgetable for you however you might think that just because it's widgetable that it's going to work well in the widget and that's not the case you might be disappointed in some cases
not all widgetable vocabularies will work in the widget and even if they do they might only work in certain of the modes basic rule is it has to be scos the sysfoc endpoints are scos specific and we use them so we can't magically determine that you have a hierarchy
from some other properties that you've invented if it's scos it will work well in tree mode basically if you've if you've used the appropriate properties to describe the hierarchy and you define some top concepts so indeed scos and then you'll be able to use it in search mode at least
and for tree mode you need a hierarchy to be defined and you need the top concepts explicitly to be defined so the widget works in a number of modes here's the list listed
in increasing order of length of name that's a coincidence there are four pre-packaged modes and although they are pre-packaged they should fulfill quite a variety of of needs you do have the opportunity to customize the behavior quite a lot even in the in the pre-packaged modes but there is an advanced mode and you can use that advanced mode to customize much much more
the behavior you um with advanced mode you don't see anything to start with you have to you have to select what you you have to describe with some javascript code what you want to happen quite you know uh it's up to you so you won't get a tree you won't get a search box etc
um if you go into that mode you have to do all that yourself but the widget gives you the infrastructure to drive whatever you decide to do so i've got some screenshots of the various modes an example from ABS fields research vocabulary displayed in tree mode this tree
mode obviously is for vocabularies in which the concepts are arranged in the hierarchy we do require that for this to work that you have explicitly used the scos properties has top concept and narrow it to define the hierarchy and then this will work nicely for you uh search mode
this is where you don't necessarily have a hierarchy or you don't want to offer the hierarchy because it's too big and cumbersome to work to work your way through um his foi displayed in search mode you typically have a text field and that text field you type start typing in letters and then you get a display of the matches and then you
pick the one that you put is the one that you want the display here shows the full set of options for what you can see in the list of suggestions here so there's the the label um the iri underneath and to the right the notation there is one for this
vocabulary we've also got two other uh modes that drill down into a part of a vocabulary the narrow mode and the collection modes a narrow mode um where you have a hierarchy and you wish to select um you wish only to offer those concepts that are narrower than a specific
concept so again you have to use the scos narrower property in your vocabulary to specify that uh the narrow mode works either with the drop down here's an example of a drop down but you can also specify text field and that text field has auto-completion
so that's that's for when the concepts are arranged in a hierarchy if using scos collections then you can use collection mode and again collection mode works either with um a drop down so select element or with a text field and again you
have auto-completion or if you have no idea you click within the text box and you press the arrow and the full list of possibilities will appear so again this is this is from revcs and so this works with uh sets of concepts that are arranged in a scos collection
advanced mode uh this is this is really roll your own so if you don't if you really don't like exactly what's what we're offering in these uh canned modes if you like and it's just not going to work for you you can roll your own and at this point you are working with if you
like the back end of the widget the back end provides some services to get the top concepts to be able to do a search to get the narrower concepts etc and then you write some uh you you you explicitly invoke those back end functions and then you write some event handlers to deal with what happens when the results come back from those back end functions the documentation
has an example that's a bit like narrow mode but it's got a list of clickable links to each concept's iri i think we use revcs for that we've got a widget explorer which will
help you to get started so it will give you the boilerplate that you need to incorporate just to do anything at all but it also generates the vocabulary specific code that you need to include it's pretty nice step-by-step wizard you will notice some similarities to the keyword aggregator if you use it i don't know who came first on that but we seem to
have done a very similar sort of thing the vocabulary we widget explorer does generate vocabulary specific code but it only offers it to you in the tree and the search modes but feel free to use that and then customize the end result so use change the look and feel or use one of the other modes again a good place to go further
is to check out the documentation and we'll give you a feel it's the dot i've spent many many hours working on the documentation the last few weeks i think it's it's good now it wasn't good before but it's it i think it really does cover what you can do and and it makes sense a lot
more than it used to so please have a look at that and feel free to try out the widget explorer try the narrow collection modes and if you're again try the core mode the documentation page does have a live demo of each of the modes that you can try and each one of those is linked to
the source code source code of those demos so you can copy paste feel free to adapt those to your own needs so please try it out and let us know what you think if you like it please go ahead and use it and if you do use it please apply for an api key that you use in cropping in the course of the widget that helps us to track who's using the
widget and helps us with our analytics that's optional but we do ask that you do that if you adapt it and use adapt the widget and use it in your page and that is it