Attribute Enhancement Suggestion
While on my vacation I spent some time thinking and I would like to make the following suggestions for the requirements for future Livelink versions. Some of these are simply logical extensions to existing features and functions and others would be to facilitate application development with Livelink.1. Attributes should have some additional options when adding them to categories. The admin user should be able to indicate the sequence and display options for any given attribute when adding that attribute to a category. The options would be stored in the category attribute table alongside the required flag. The following options would be set for each attribute as it is added to the category: Relative Sequence number, i.e. 20, 30, 40, 50, etc. This would be used to order the attribute in the data entry and results pages.Display options for standard(as it is now), radio button option(for popup values), check boxes(for multi value attributes), vertical orientation(i.e. radio buttons or check boxes stacked vertically), horizontal orientation( i.e. radio buttons or check boxes in a row), password data entry(i.e. masked entry)Extended Validation criteria, as with ranges of numbers, sql lookup or stored procedure, popup window for browsing, searching or execution of another html template/webscript.2. Attributes should have in their definition the option to select values from either a fixed set of options as they are now, or an sql statement that builds the list of values from someplace else in the database as with a legacy table or integrated system.3. Categories and attributes should be assignable to all objects in Livelink, users, groups, projects, workflow maps, folders, documents, aliases(separate from the original), etc. All objects.4. Categories should be defined to apply to specific object types, some would apply to folders and documents and others to users and groups, etc.5. Categories should be defined to allow sub-categories, i.e. category A could have sub-category AA and AB but not BA. The sub-category would be a new attribute type and would always be a popup select of the sub-categories defined for that category.6. Hooks/sub-class scripts should be provided or expanded to allow easier extension of the attribute handling(i.e. server side validation on entry or population of popup value lists on page generation).7. Each attribute should be handled separately by a ;;call (AttributeArray)(nested ;;call mechanism would be a good thing)8. Each object should be allowed to setup "Non-Category" attributes in addition to or instead of "Category" attributes. The owner of the object would be able to assign any predefined attribute to that object. The values would be stored in a single "non-cat" attribute table with one row per attribute per object. The non-cat attribute table would include the DATAID of the object, the ATTRNAME of the attribute defined in the attributes table, and the ATTRVALUE which would hold the value for that object attribute. A View would join the attribute definition table with the non-cat table.9. Livelink should come with a wide range of attributes predefined for things like, First Name, Last Name, Middle Name, Middle Initial, Full Name, Department, Address1, Address2, City, State Code, Zip/Postal, Country, Company Name, etc. to save customers time and make the product more complete.10. Multi-valued attributes would be defined with either a value/prompt pair or an sql statement to obtain values and prompts from another table.