The RIPE NCC Database Group is pleased to announce a new and improved Webupdates tool for accessing the RIPE Database. This article outlines the workflow and usage of the new Webupdates for changing data in the RIPE Database.
The new Webupdates tool is available now at:
http://www.ripe.net/webupdates . Figure 1 shows the start page.
Figure 1: Start page
The web interface (Webupdates) and the underlying synchronous update interface (Syncupdates) were some of the first tools written for Version 3 of the RIPE Database. These are now almost ten years old. This new Webupdates tool uses up-to-date technology and makes use of the RIPE Database API. It still uses the current Syncupdates for submitting objects to the RIPE Database, but we are also working on a replacement for this.
The basic idea of Webupdates has been maintained. So if you are a regular user you will adapt quickly and easily to the new forms. The main differences will be described in this article. We tried to make it as easy to use and intuitive as possible. There are no lengthy manuals describing all the features. Instead we have added information icons (denoted by the letter 'i') where things need to be explained.
Outline of the main features
The centre of the screen is where you primarily work on the database objects. But if you look first down the right hand side of the page you will see a number of useful features.
The 'Quick Links' take you straight to one of the three main workflows:
- Create an object
- Modify or delete an object
- Quick update
There is a box for storing passwords (see Figure 2). Up to 10 passwords may be entered. These are stored for the duration of the session. That is about 30 minutes from the last action performed. All the passwords can be cleared with the reset button.
Figure 2: Storing passwords
The last part of this right hand side column is a brief description of what the current page does or of the information contained within the centre section (as shown in Figure 3).
Figure 3: Text on the right hand side describing the current page
Within the centre section of the page objects can be searched for, displayed and updated. For create, modify and delete you must choose the source database and select the operation and can specify the object type. The operation allows a choice between showing the object in separate fields per attribute or in one single text area. It is not possible to switch between these choices, except by cancelling the operation and making a different choice. In many cases the database knows what object type the primary key represents. But sometimes many different types may be returned. In these cases specifying the type you are serching for can reduce the list of objects.
For modify and delete, the object must be selected. This is shown in Figure 4. The 'Search for' field allows either a simple primary key of an object or a RIPE Database query where most of the query flags can be used.
Figure 4: Modifying or deleting an object
A list is returned with a maximum of 100 objects. Select the object (as shown in Figure 5) and continue with the Update. This uses the RESTful interface to the RIPE Database to do the search.
Figure 5: Selecting the object you want to modify
The data can now be changed and submitted to the database (see Figure 6).
Figure 6: Editing an object
If you cancel the operation, you will return to the search results page. After selecting a different operation, repeat the search and continue. It is not immediately obvious that you need to repeat the search. In a later release we will simplify this part of the process.
When creating an object in the single text area mode, the template for the object is loaded into the text area. The mandatory attributes are shown in upper case for convenience. The final submission to the database is case insensitive but all attribute names will be converted to lower case as a matter of style. Any optional attributes not required must be removed. Blank values may cause syntax errors.
When creating an object by individual fields, only a single instance of the mandatory attributes is shown. For attributes that are multiple, additional fields can be added by clicking on the '+' symbol shown next to the field. The new attributes will be added after the last instance of that attribute. The insertion icon allows you to add any attribute that is allowed in the object type you are processing. It is added immediately after the attribute whose insertion icon you clicked on. This allows some order dependency to be created. Any optional, or multiple instance of a mandatory, attribute can be deleted by clicking on the delete icon following the attribute to be deleted. It is not possible to delete the last instance of a mandatory attribute.
The 'Quick update' option allows for any type of update (create, modify, delete) to be done from a simple text area. To create an object we provide a feature to load a template of the object. As with the 'Create an object' option, mandatory attributes are shown in upper case.
The 'Create' button will force a new object to be created in the database. If the object already exists an error will occur. Use the 'Update' button to modify or delete an existing object.
Only a single object will be processed in any text area form. The "password:" pseudo attribute can be used in the text areas in addition to the stored session passwords. Alternatively a signed object can be pasted into a text area.
Note that the session preserves some data for quite a while. So if you return to Modify after some Creations you may find it still contains the results of a previous search. The 'Reset' will clear any preserved session data for a page and return to the default preset values.
If you have any issues with, or find any bugs in, the new Webupdates, please report them to < firstname.lastname@example.org > . Alternatively, if you want an open discussion on any aspect of Webupdates you can use the feedback form below this article.
We will assess any reports quickly and report back with an estimate of time for fixing the problem or an explanation of why it works this way. Some issues may be added to a feature request list and processed after any urgent bug fixes.