##
## core-fd.schema - Needed by FusionDirectory for its basic fonctionnalities
##


# Attributes
attributetype ( 1.3.6.1.4.1.10098.1.1.12.1 NAME 'gosaSubtreeACL'
  DESC 'GOsa - ACL entry'
  OBSOLETE
  EQUALITY caseIgnoreMatch
  SUBSTR caseIgnoreSubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)

attributetype ( 1.3.6.1.4.1.10098.1.1.12.2 NAME 'gosaUser'
  DESC 'GOsa - DN of a user'
  EQUALITY caseIgnoreMatch
  SUBSTR caseIgnoreSubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)

attributetype ( 1.3.6.1.4.1.10098.1.1.12.3 NAME 'gosaObject'
  DESC 'GOsa - DN of an object'
  EQUALITY caseIgnoreMatch
  SUBSTR caseIgnoreSubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)

attributetype ( 1.3.6.1.4.1.10098.1.1.12.14 NAME 'gosaDefaultLanguage'
  DESC 'GOsa - Defines the default language for a user'
  OBSOLETE
  EQUALITY caseIgnoreIA5Match
  SUBSTR caseIgnoreIA5SubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE)

attributetype ( 1.3.6.1.4.1.10098.1.1.12.30 NAME 'gosaGroupObjects'
  DESC 'GOsa - List of all object types that are in a gosaGroupOfNames'
  EQUALITY caseIgnoreIA5Match
  SUBSTR caseIgnoreIA5SubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE)

attributetype ( 1.3.6.1.4.1.10098.1.1.12.34 NAME 'gosaAclTemplate'
  DESC 'GOsa - ACL entries for ACL roles'
  EQUALITY caseIgnoreIA5Match
  SUBSTR caseIgnoreIA5SubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.26)

attributetype ( 1.3.6.1.4.1.10098.1.1.12.35 NAME 'gosaAclEntry'
  DESC 'GOsa - ACL entries'
  EQUALITY caseIgnoreIA5Match
  SUBSTR caseIgnoreIA5SubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.26)

attributetype ( 1.3.6.1.4.1.10098.1.1.12.37 NAME 'gosaSnapshotTimestamp'
  DESC 'GOsa - Unix timestamp of snapshot'
  EQUALITY caseIgnoreMatch
  SUBSTR caseIgnoreSubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE)

attributetype ( 1.3.6.1.4.1.10098.1.1.12.38 NAME 'gosaSnapshotDN'
  DESC 'GOsa - Original DN of saved object in snapshot'
  EQUALITY caseIgnoreMatch
  SUBSTR caseIgnoreSubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE)

attributetype ( 1.3.6.1.4.1.10098.1.1.12.39 NAME 'gosaSnapshotData'
  DESC 'GOsa - Original data of saved object in snapshot'
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.5 SINGLE-VALUE)

attributetype ( 1.3.6.1.4.1.10098.1.1.12.46 NAME 'gosaLoginRestriction'
  DESC 'GOsa - Multivalue attribute to carry a number of allowed ips/subnets'
  OBSOLETE
  SUP name)

attributetype ( 1.3.6.1.4.1.10098.1.1.6.2 NAME 'academicTitle'
  DESC 'Field to represent the academic title'
  OBSOLETE
  EQUALITY caseIgnoreMatch
  SUBSTR caseIgnoreSubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)

attributetype ( 1.3.6.1.4.1.15305.2.1 NAME ( 'gender' 'sex' )
  DESC    'Gender: M for male, F for female'
  EQUALITY caseIgnoreIA5Match
  SYNTAX  1.3.6.1.4.1.1466.115.121.1.26{1}
  SINGLE-VALUE )

attributetype ( 1.3.6.1.4.1.15305.2.2 NAME ( 'dateOfBirth' 'dob' )
  DESC    'Date of birth in ISO 8601 format'
  EQUALITY caseIgnoreMatch
  SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{10}
  SINGLE-VALUE )

# Classes
objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.1 NAME 'gosaObject' SUP top AUXILIARY
  DESC 'GOsa - Class for GOsa settings'
  OBSOLETE
  MUST ( )
  MAY ( gosaSubtreeACL ))

objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.2 NAME 'gosaLockEntry' SUP top STRUCTURAL
  DESC 'GOsa - Class for GOsa locking'
  MUST ( gosaUser $ gosaObject $ cn ))

objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.3 NAME 'gosaCacheEntry' SUP top STRUCTURAL
  DESC 'GOsa - Class for GOsa caching'
  OBSOLETE
  MAY  ( )
  MUST ( cn $ gosaUser ))

objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.4 NAME 'gosaDepartment' SUP top AUXILIARY
  DESC 'GOsa - Class to mark Departments for GOsa'
  MUST  ( ou $ description )
  MAY   ( manager ))

objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.6 NAME 'gosaAccount' SUP top AUXILIARY
  DESC 'GOsa - Class for GOsa Accounts'
  OBSOLETE
  MUST ( )
  MAY (
    gosaLoginRestriction $
    gosaDefaultLanguage $ academicTitle $ personalTitle $ dateOfBirth $ gender
  ) )

objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.11 NAME 'gosaUserTemplate' SUP top AUXILIARY
  DESC 'GOsa - Class for GOsa User Templates'
  OBSOLETE
  MUST ( cn ))

objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.12 NAME 'gosaGroupOfNames'
  DESC 'GOsa - Adds the gosaGroupObjects field to groupOfNames'
  SUP top AUXILIARY
  MUST ( cn $ gosaGroupObjects ) MAY ( member $ description ) )

objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.17 NAME 'gosaRole'
  DESC 'GOsa - ACL container to define ACL roles'
  SUP top STRUCTURAL
  MUST ( gosaAclTemplate $ cn )
  MAY  ( description ) )

objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.18 NAME 'gosaAcl'
  DESC 'GOsa - ACL container to define single ACLs'
  SUP top AUXILIARY
  MUST ( gosaAclEntry  ))

objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.19 NAME 'gosaSnapshotObject'
  DESC 'GOsa - Container object for undo and snapshot data'
  SUP top STRUCTURAL
  MUST ( gosaSnapshotTimestamp $ gosaSnapshotDN $ gosaSnapshotData )
  MAY  ( description ) )