Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The attribute framework is used for attaching metadata to various objects in the registry.  One example is here

Table of Contents
For information about the Attribute Framework UI, see this page

Features

  • Attributes have a definition (attributeDef), and a name (attributeName or aka attributeDefName).  There  
  • There is a one-to-many relationship between attributeDef and attributeName.  
  • The  The definition has all the configuration, and the name is assigned to the object


    Gliffy Diagram
    nameattributeDefToNameOneToMany
    pagePin5


     
  • Attributes can be assigned to groups, memberships (immediate or effective), members (i.e. subjects), folders, other attributes, and attribute assignments (one level deep)

    Gliffy Diagram
    nameattributeAssignTo
    pagePin2

     
  • Attribute assignments that are permissions have an optional "action" qualifier for permission type attributes.  This is a free form string which is configured per attribute definition

    Gliffy Diagram
    nameattributePermissionAction
    pagePin1

     
  • Attributes could have free-form values, multi-valued, multi-assigned, limits as to where they can be applied, validation on values (TODO on validation), etc

    Gliffy Diagram
    nameattributeAssignAndValueTypes
    pagePin1

     
  • Attributes can have enabled/disabled dates.

...

Code Block
# comma separated names of attribute defs will not be audited or change log or point in time
# same as ${edu.internet2.middleware.grouper.cfg.GrouperConfig.retrieveConfig().propertyValueStringRequired('grouper.attribute.rootStem')}
grouper.attribute.namesOfAttributeDefsToIgnoreAuditsChangeLogPit.elConfig = $$grouper.attribute.rootStem$$:userData:grouperUserDataValueDef,$$grouper.attribute.rootStem$$:instrumentationData:instrumentationDataInstanceCountsDef,$$grouper.attribute.rootStem$$:instrumentationData:instrumentationDataInstanceDetailsDef,$$grouper.attribute.rootStem$$:instrumentationData:instrumentationDataCollectorDetailsDef

# comma separated names of attribute def names will not be audited or change log or point in time
grouper.attribute.namesOfAttributeDefNamesToIgnoreAuditsChangeLogPit.elConfig = $$grouper.attribute.rootStem$$:attestation:attestationCalculatedDaysLeft,$$grouper.attribute.rootStem$$:attestation:attestationLastEmailedDate,$$grouper.attribute.rootStem$$:loaderMetadata:grouperLoaderMetadataLastFullMillisSince1970,$$grouper.attribute.rootStem$$:loaderMetadata:grouperLoaderMetadataLastIncrementalMillisSince1970,$$grouper.attribute.rootStem$$:loaderMetadata:grouperLoaderMetadataLastSummary



See Also