diff --git a/info.textgrid.middleware.tgauth.rbac/ldap-schemas/eduperson-200806.schema b/info.textgrid.middleware.tgauth.rbac/ldap-schemas/eduperson-200806.schema new file mode 100644 index 0000000000000000000000000000000000000000..f35c2673ccc2ee2f4793be200dac8553ab80dce7 --- /dev/null +++ b/info.textgrid.middleware.tgauth.rbac/ldap-schemas/eduperson-200806.schema @@ -0,0 +1,126 @@ +# +################################################################################ +# +# dn: cn=schema +# +################################################################################ +# +attributeType ( 1.3.6.1.4.1.5923.1.1.1.1 + NAME 'eduPersonAffiliation' + DESC 'eduPerson per Internet2 and EDUCAUSE' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' ) + +# +################################################################################ +# +attributeType ( 1.3.6.1.4.1.5923.1.1.1.2 + NAME 'eduPersonNickname' + DESC 'eduPerson per Internet2 and EDUCAUSE' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' ) + +# +################################################################################ +# +attributeType ( 1.3.6.1.4.1.5923.1.1.1.3 + NAME 'eduPersonOrgDN' + DESC 'eduPerson per Internet2 and EDUCAUSE' + EQUALITY distinguishedNameMatch + SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' + SINGLE-VALUE ) + +# +################################################################################ +# +attributeType ( 1.3.6.1.4.1.5923.1.1.1.4 + NAME 'eduPersonOrgUnitDN' + DESC 'eduPerson per Internet2 and EDUCAUSE' + EQUALITY distinguishedNameMatch + SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' ) + +# +################################################################################ +# +attributeType ( 1.3.6.1.4.1.5923.1.1.1.5 + NAME 'eduPersonPrimaryAffiliation' + DESC 'eduPerson per Internet2 and EDUCAUSE' + 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.5923.1.1.1.6 + NAME 'eduPersonPrincipalName' + DESC 'eduPerson per Internet2 and EDUCAUSE' + 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.5923.1.1.1.7 + NAME 'eduPersonEntitlement' + DESC 'eduPerson per Internet2 and EDUCAUSE' + EQUALITY caseExactMatch + SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' ) + +# +################################################################################ +# +attributeType ( 1.3.6.1.4.1.5923.1.1.1.8 + NAME 'eduPersonPrimaryOrgUnitDN' + DESC 'eduPerson per Internet2 and EDUCAUSE' + EQUALITY distinguishedNameMatch + SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' + SINGLE-VALUE ) + +# +################################################################################ +# +attributeType ( 1.3.6.1.4.1.5923.1.1.1.9 + NAME 'eduPersonScopedAffiliation' + DESC 'eduPerson per Internet2 and EDUCAUSE' + EQUALITY caseIgnoreMatch + SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' ) + +# +################################################################################ +# +attributeType ( 1.3.6.1.4.1.5923.1.1.1.10 + NAME 'eduPersonTargetedID' + DESC 'eduPerson per Internet2 and EDUCAUSE' + EQUALITY caseIgnoreMatch + SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' ) + +# +################################################################################ +# +attributeType ( 1.3.6.1.4.1.5923.1.1.1.11 + NAME 'eduPersonAssurance' + DESC 'eduPerson per Internet2 and EDUCAUSE' + EQUALITY caseIgnoreMatch + SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' ) + +# +################################################################################ +# +objectClass ( 1.3.6.1.4.1.5923.1.1.2 + NAME 'eduPerson' + DESC 'eduPerson per Internet2 and EDUCAUSE' + AUXILIARY + MAY ( eduPersonAffiliation $ eduPersonNickname $ eduPersonOrgDN $ + eduPersonOrgUnitDN $ eduPersonPrimaryAffiliation $ + eduPersonPrincipalName $ eduPersonEntitlement $ + eduPersonPrimaryOrgUnitDN $ eduPersonScopedAffiliation $ + eduPersonTargetedID $ eduPersonAssurance ) ) + + +################################################################################ diff --git a/info.textgrid.middleware.tgauth.rbac/ldap-schemas/schac-20090326-1.4.0.schema b/info.textgrid.middleware.tgauth.rbac/ldap-schemas/schac-20090326-1.4.0.schema new file mode 100644 index 0000000000000000000000000000000000000000..efeda7ae4b01be15829917d4564aa251e0b95a89 --- /dev/null +++ b/info.textgrid.middleware.tgauth.rbac/ldap-schemas/schac-20090326-1.4.0.schema @@ -0,0 +1,656 @@ +#---------------------------------------------------------------------- +# +# schac v: 20090326-1.4.0 +# +# SCHema for ACademia +# Attribute definitions for individual data +# +# The latest version of this document is avaliable at +# http://www.terena.org/activities/tf-emc2/docs/schac/schac-20090326-1.4.0.schema.txt +# +#---------------------------------------------------------------------- +# +# Changelog +# +# 20090326 - 1.4.0 +# 20090313 - Added schacYearOfBirth experimental attribute. +# 20090304 - Changed schacProjectMembership and schacProjectSpecificRole +# from experimental OID branch to official branch below +# schacGroupMembership object class. +# - OIDs schacExpAttr:1 and schacExpAttr:2 are obsoleted and +# will not be reused ever. +# 20061215 - Added schacExerimental ObjectClass and schacProjectMembership +# and schacProjectSpecificRole experimental attributes +# 20061212 - 1.3.0 +# - Changed references from terena.org to terena.org. +# 20061125 - Changed schacPersonalPosition and schacUserStaus format +# and samples +# 20061017 - Delete shacUUID attribute (TF-EMC2 Málaga) +# 20060928 - Changed schacHomeOrganization syntax OID +# - New definition of shacUUID attribute +# 20060504 - 1.2.0 +# - Changed schacUserPresenceID syntax from URN to URI. +# - Added references to the TERENA URN registry. +# - Clarify schaExpiryDate scope. +# 20060327 - SCHAC URN assigned: urn:mace:terena.org:schac +# 20060310 - 1.1.1 +# - TERENA OID assigned: 1.3.6.1.4.1.25178 +# 20060210 - Second release +# 20051122 - Initial release +# + +objectIdentifier TERENA 1.3.6.1.4.1.25178 + +objectIdentifier schac TERENA:1 +objectIdentifier schacExperimental schac:0 +objectIdentifier schacObjectClass schac:1 +objectIdentifier schacAttributeType schac:2 +objectIdentifier schacExpObjClass schacExperimental:1 +objectIdentifier schacExpAttr schacExperimental:2 + + +#---------------------------------------------------------------------- +# Attributes +#---------------------------------------------------------------------- + +# +# schacMotherTongue +# +# Descrip: Is the language a person learns first. Correspondingly, +# the person is called a native speaker of the language. +# Usually a child learns the basics of their first language +# from their family. +# +# Format: See RFC 3066 Tags for the Identification of Languages +# +# Example: schacMotherTongue: fr +# Example: schacMotherTongue: es-ES +# +attributetype ( schacAttributeType:1 + NAME 'schacMotherTongue' + DESC 'RFC 3066 code for prefered language of communication' + EQUALITY caseExactMatch + SINGLE-VALUE + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacGender +# +# Descrip: The state of being male or female. The gender attribute +# specifies the legal gender of the subject it is associated with. +# "Either of the two groups that people, animals and plants are +# divided into according to their function of producing young" +# (Oxford Advanced Learner's Dictionary) +# +# Format: 0 Not known +# 1 Male +# 2 Female +# 9 Not specified +# +# Example: schacGender: 2 +# +attributetype ( schacAttributeType:2 + NAME 'schacGender' + DESC 'Representation of human sex (see ISO 5218)' + EQUALITY integerMatch + SINGLE-VALUE + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 ) + +# +# schacDateOfBirth +# +# Descrip: The date of birth for the subject it is associated with +# +# Format: Numeric value YYYYMMDD, using 4 digits for year, 2 digits +# for month and 2 digits for day as described in RFC 3339 +# 'Date and Time on the Internet: Timestamps' as reference +# using the 'full-date' format from paragraph 5.6 but without +# the dashes. +# +# Example: schacDateOfBirth: 19660412 +# +attributetype ( schacAttributeType:3 + NAME 'schacDateOfBirth' + DESC 'Date of birth (format YYYYMMDD, only numeric chars)' + EQUALITY numericStringMatch + ORDERING numericStringOrderingMatch + SUBSTR numericStringSubstringsMatch + SINGLE-VALUE + SYNTAX 1.3.6.1.4.1.1466.115.121.1.36 ) + +# +# schacPlaceOfBirth +# +# Descrip: Specifies the place of birth for the subject it is associated with. +# +# Format: Free string +# +# Example: schacPlaceOfBirth: Algeciras, Spain +# +attributetype ( schacAttributeType:4 + NAME 'schacPlaceOfBirth' + DESC 'Birth place of a person' + EQUALITY caseIgnoreMatch + ORDERING caseIgnoreOrderingMatch + SUBSTR caseIgnoreSubstringsMatch + SINGLE-VALUE + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacCountryOfCitizenship +# +# Descrip: Specifies the (claimed) countries of citizenship for the +# subject it is associated with. +# +# Format: Two-letter country acronym in accordance with ISO 3166. +# +# Example: schacCountryOfCitizenship: es +# +attributetype ( schacAttributeType:5 + NAME 'schacCountryOfCitizenship' + DESC 'Country of citizenship of a person. Format two-letter acronym according to ISO 3166' + EQUALITY caseIgnoreMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacSn1 +# +# Descrip: First surname of a person ("the surname" in international terms) +# +# schacSn1 would contain whatever values the described person +# thinks they should contain. Splitting shall be done by humans. +# That means that, when filling a SCHAC-based description that +# allows the use of schacSn1 and schacSn2, the administrators +# must ask for 1st surname and 2nd surname (if applicable) as +# well as they do for givenName, surname, etc. +# +# Format: Free string +# +# Example: In Spain, if sn = Lopez de la Moraleda y de Las Altas Alcurnias +# and that person uses Lopez de la Moraleda as the first component +# of the surname we can write: +# +# schacSn1: Lopez de la Moraleda +# +# In Poland, if sn = Gorecka-Wolniewicz and we decide to use the +# national convention for the sn attribute, we can write: +# +# schacSn1: Wolniewicz +# +attributetype ( schacAttributeType:6 + NAME 'schacSn1' + DESC 'First surname of a person' + EQUALITY caseIgnoreMatch + ORDERING caseIgnoreOrderingMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacSn2 +# +# Descrip: Second surname of a person (how this is assigned is a local matter). +# +# schacSn2 would contain whatever values the described person +# thinks they should contain. Splitting shall be done by humans. +# That means that, when filling a SCHAC-based description that +# allows the use of schacSn1 and schacSn2, the administrators +# must ask for 1st surname and 2nd surname (if applicable) as well +# as they do for givenName, surname, etc. +# +# Format: Free string +# +# Example: In Spain, if sn = Lopez de la Moraleda y de Las Altas Alcurnias +# and that person uses Lopez de la Moraleda as the second component +# of the surname we can write: +# +# schacSn2: de Las Altas Alcurnias +# +# In Poland, if sn = Gorecka-Wolniewicz and we decide to use the +# national convention for the sn attribute, we can write: +# +# schacSn2: Gorecka +# +attributetype ( schacAttributeType:7 + NAME 'schacSn2' + DESC 'Second surname of a person' + EQUALITY caseIgnoreMatch + ORDERING caseIgnoreOrderingMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacPersonalTitle +# +# Descrip: The Personal Title attribute type specifies a personal title +# or salutation for a person. Examples of personal titles are +# "Ms", "Dr", "Prof", "Rev", "Sr". +# +# Format: Free string +# +# Example: schacPersonalTitle: Prof +# +attributetype ( schacAttributeType:8 + NAME 'schacPersonalTitle' + DESC 'RFC1274: personal title' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SINGLE-VALUE + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacHomeOrganization +# +# Descrip: Specifies a person´s home organization using the domain name +# of the organization +# +# Format: Domain name acording to RFC 1035. +# +# Example: schacHomeOrganization: tut.fi +# +attributetype ( schacAttributeType:9 + NAME 'schacHomeOrganization' + DESC 'Domain name of the home organization' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SINGLE-VALUE + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacHomeOrganizationType +# +# Descrip: Type of a Home Organization +# +# Format: urn:mace:terena.org:schac:homeOrganizationType:<country-code>:<string> +# +# - The <country-code> must be a valid two-letter ISO 3166 +# country code identifier or the string "int", and assigned by +# TERENA URN Registry for this attribute at +# http://www.terena.org/registry/terena.org/schac/homeOrganizationType/ +# +# - <string> from a nationally controlled vocabulary, published +# through the URI identified at the above mentioned TERENA URN +# registry +# +# Example: Common values: +# +# urn:mace:terena.org:schac:homeOrganizationType:int:university +# urn:mace:terena.org:schac:homeOrganizationType:int:uas +# urn:mace:terena.org:schac:homeOrganizationType:int:research-institution +# urn:mace:terena.org:schac:homeOrganizationType:int:university-hospital +# urn:mace:terena.org:schac:homeOrganizationType:int:nren +# urn:mace:terena.org:schac:homeOrganizationType:int:other +# +# National extensions: +# +# urn:mace:terena.org:schac:homeOrganizationType:ch:vho +# urn:mace:terena.org:schac:homeOrganizationType:es:opi +# +attributetype ( schacAttributeType:10 + NAME 'schacHomeOrganizationType' + DESC 'Type of the home organization' + EQUALITY caseIgnoreMatch + SINGLE-VALUE + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacCountryOfResidence +# +# Descrip: Specifies the (claimed) country of residence for the subject +# is associated with. +# +# Format: Two-letter country acronym in accordance with ISO 3166 country +# code identifier. +# +# Example: schacCountryOfResidence: es +# +attributetype ( schacAttributeType:11 + NAME 'schacCountryOfResidence' + DESC 'Country of citizenship of a person. Format two-letter acronym according to ISO 3166' + EQUALITY caseIgnoreMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacUserPresenceID +# +# Descrip: To store a set of user identifiers in presence and instant +# messaging systems and protocols +# +# Format: URI +# +# Example: schacUserPresenceID: xmpp:pepe@im.univx.es +# schacUserPresenceID: sip:jose.perez@myweb.es +# schacUserPresenceID: sip:+34-95-505-6600@univx.es;transport=TCP;user=phone +# schacUserPresenceID: sips:alice@atlanta.com?subject=project%20x&priority=urgent +# schacUserPresenceID: h323:pepe@myweb.fi:808;pars +# schacUserPresenceID: skype:pepe.perez +# +attributetype ( schacAttributeType:12 + NAME 'schacUserPresenceID' + DESC 'Used to store a set of values related to the network presence' + EQUALITY caseExactMatch + SUBSTR caseExactSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacPersonalPosition +# +# Descrip: Specifies a personal position inside an institution +# +# Format: urn:mace:terena.org:schac:personalPosition:<country-code>:<domain>:<iNSS> +# +# - The <country-code> must be a valid two-letter ISO 3166 country +# code identifier or the string "int", and assigned by the +# TERENA URN Registry for this attribute at +# http://www.terena.org/registry/terena.org/schac/personalPosition/ +# +# - <domain> is the institution domain name acording to RFC 1035 +# +# - <iNSS> is a Namespace Specific String as defined in RFC 2141 +# but case insenstitive. Valid components for it are those +# specified (or explicitly delegated) by the TERENA URN Registry +# for this attribute at +# http://www.terena.org/registry/terena.org/schac/personalPosition/ +# +# Example: schacPersonalPosition: urn:mace:terena.org:schac:personalPosition:pl:umk.pl:programmer +# +attributetype ( schacAttributeType:13 + NAME 'schacPersonalPosition' + DESC 'Position inside an institution' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacPersonalUniqueCode +# +# Descrip: Specifies a "unique code" for the subject it is associated with. +# Its value does not necessarily correspond to any identifier +# outside the scope of the directories using this schema. +# +# This might be Student number, Employee number,... +# +# Format: urn:mace:terena.org:schac:personalUniqueCode:<country-code>:<iNSS> +# +# - The <country-code> must be a valid two-letter ISO 3166 country +# code identifier or the string "int", and assigned by the TERENA +# URN Registry for this attribute at +# http://www.terena.org/registry/terena.org/schac/personalUniqueCode/ +# +# - <iNSS> is a Namespace Specific String as defined in RFC 2141 +# but case insensitive. +# +# Example: Common Values: +# +# urn:mace:terena.org:schac:personalUniqueCode:int:studentID:<country-code>:<code> +# +# National extensions: +# +# urn:mace:terena.org:schac:personalUniqueCode:fi:tut.fi:hetu:010161-995A +# urn:mace:terena.org:schac:personalUniqueCode:es:uma:estudiante:a3b123c12 +# urn:mace:terena.org:schac:personalUniqueCode:se:LIN:87654321 +# +attributetype ( schacAttributeType:14 + NAME 'schacPersonalUniqueCode' + DESC 'unique code for the subject' + EQUALITY caseIgnoreMatch + ORDERING caseIgnoreOrderingMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacPersonalUniqueID +# +# Descrip: Specifies a "legal unique identifier" for the subject it +# is associated with. +# This might be DNI in Spain, FIC in Finland, NIN in Sweden. +# +# Format: urn:mace:terena.org:schac:personalUniqueID:<country-code>:<idType>:<idValue> +# +# - The <country-code> must be a valid two-letter ISO 3166 country +# code identifier or the string "int", and assigned by the TERENA +# URN Registry for this attribute at +# http://www.terena.org/registry/terena.org/schac/personalUniqueID/ +# +# - <idType>. Acceptable values must be declared per each country +# code through the URI identified at the above mentioned TERENA URN +# registry. +# +# - <idValue> +# +# Example: National extensions +# +# urn:mace:terena.org:schac:personalUniqueID:fi:FIC:260667-123F +# urn:mace:terena.org:schac:personalUniqueID:es:NIF:31241312L +# urn:mace:terena.org:schac:personalUniquelD:se:NIN:12345678 +# +attributetype ( schacAttributeType:15 + NAME 'schacPersonalUniqueID' + DESC 'Unique identifier for the subject' + EQUALITY caseExactMatch + ORDERING caseExactOrderingMatch + SUBSTR caseExactSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# +# schacExpiryDate +# +# Descrip: The date from which the set of data is to be considered +# invalid (specifically, in what refers to rights and +# entitlements). This date applies to the entry as a whole. +# +# Format: schacExpiryDate values MUST be expressed Greenwich Mean +# Time (Zulu) and MUST include seconds (i.e., times are +# YYYYMMDDhhmmssZ), even where the number of seconds is zero. +# GeneralizedTime values MUST NOT include fractional seconds. +# +# Example: schacExpiryDate: 20051231125959Z +# +attributetype ( schacAttributeType:17 + NAME 'schacExpiryDate' + DESC 'Date from which the set of data is to be considered invalid (format YYYYMMDDhhmmssZ)' + EQUALITY generalizedTimeMatch + ORDERING generalizedTimeOrderingMatch + SINGLE-VALUE + SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 ) + +# +# schacUserPrivateAttribute +# +# Descrip: Used to model privacy requirements, as expressed by the user +# and/or the organizational policies. The values are intended +# to be attribute type names and applies to the attribute and i +# any subtypes of it for a given entity. +# +# In what respects to data exchange, it applies to the +# expression of privacy requirements. +# +# This attribute can also have specific operational semantics +# that will be defined in a separate document. +# +# Format: An attribute type identifier. +# Operational semantics may imply specific values as wildcards. +# +# Example: Attributes mail and telephoneNumber are considered private +# +# schacUserPrivateAttribute: mail +# schacUserPrivateAttribute: telephoneNumber +# +attributetype ( schacAttributeType:18 + NAME 'schacUserPrivateAttribute' + DESC 'Set of denied access attributes' + EQUALITY caseIgnoreIA5Match + SUBSTR caseIgnoreIA5SubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) + +# +# schacUserStatus +# +# Descrip: Used to store a set of status of a person as user of services +# +# Format: urn:mace:terena.org:schac:userStatus:<country-code>:<domain>:<iNSS> +# +# - The <country-code> must be a valid two-letter ISO 3166 country +# code identifier or the string "int", and assigned by the TERENA +# URN Registry for this attribute at +# http://www.terena.org/registry/terena.org/schac/userStatus/ +# +# - <domain> is the institution domain name acording to RFC 1035 +# +# - <iNSS> is a Namespace Specific String as defined in RFC 2141 +# but case insensitive. +# +# Example: To store different user activity states at University of +# Málaga (uma.es): +# +# urn:mace:terena.org:schac:userStatus:uma.es:affiliation:expired +# urn:mace:terena.org:schac:userStatus:uma.es:sendMail:expired +# urn:mace:terena.org:schac:userStatus:uma.es:getMail:active +# +# A parameter in the URN can be used to represent the temporal +# validity of the satus: +# +# urn:mace:terena.org:schac:userStatus:ujl.si:webmail:active+ttl=20060531 +# +attributetype ( schacAttributeType:19 + NAME 'schacUserStatus' + DESC 'Used to store a set of status of a person as user of services' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# schacProjectMembership +# +# Descrip: The name of the project +# +# Format: <project-name> +# +# The <project-name> must be a name assigned by the TERENA +# URN Registry for this attribute at +# http://www.terena.org/registry/terena.org/schac/projectSpecificRole/ +# +# Example: perfsonar +# +attributetype ( schacAttributeType:20 + NAME 'schacProjectMembership' + DESC 'Name of the project' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +# schacProjectSpecificRole +# +# Descrip: Used to store a set of roles inside specific projects +# +# Format: urn:mace:terena.org:schac:projectSpecificRole:<project-name>:<iNSS> +# +# The <project-name> must be a name assigned by the TERENA +# URN Registry for this attribute at +# http://www.terena.org/registry/terena.org/schac/projectSpecificRole/ +# <iNSS> is a Namespace Specific String as defined in RFC 2131 but +# case insensitive +# +# Example: urn:mace:terena.org:schac:projectSpecificRole:perfsonar:developer +# +attributetype ( schacAttributeType:21 + NAME 'schacProjectSpecificRole' + DESC 'Used to store a set of roles of a person inside a project' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + +#---------------------------------------------------------------------- +# ObjectClasses +#---------------------------------------------------------------------- +objectClass ( schacObjectClass:1 + NAME 'schacPersonalCharacteristics' + DESC 'Personal characteristics describe the individual person represented by the entry' + AUXILIARY + MAY ( schacMotherTongue $ schacGender $ schacDateOfBirth $ + schacPlaceOfBirth $ schacCountryOfCitizenship $ + schacSn1 $ schacSn2 $ schacPersonalTitle ) ) + +objectClass ( schacObjectClass:2 + NAME 'schacContactLocation' + DESC 'Primary means of locating and contacting potential collaborators and other persons-of-interest at peer institutions' + AUXILIARY + MAY ( schacHomeOrganization $ schacHomeOrganizationType $ + schacCountryOfResidence $ schacUserPresenceID ) ) + +objectClass ( schacObjectClass:3 + NAME 'schacEmployeeInfo' + DESC 'Employee information includes attributes that have relevance to the employee role, such as position, office hours, and job title' + AUXILIARY + MAY ( schacPersonalPosition ) ) + +objectClass ( schacObjectClass:4 + NAME 'schacLinkageIdentifiers' + DESC 'Used to link a directory entry with records in external data stores or other directory entries' + AUXILIARY + MAY ( schacPersonalUniqueCode $ schacPersonalUniqueID ) ) + +objectClass ( schacObjectClass:5 + NAME 'schacEntryMetadata' + DESC 'Used to contain information about the entry itself, often its status, birth, and death' + AUXILIARY + MAY ( schacExpiryDate ) ) + +objectClass ( schacObjectClass:6 + NAME 'schacEntryConfidentiality' + DESC 'Used to indicate whether an entry is visible publicly, visible only to affiliates of the institution, or not visible at all' + AUXILIARY + MAY ( schacUserPrivateAttribute ) ) + +objectClass ( schacObjectClass:7 + NAME 'schacUserEntitlements' + DESC 'Authorization for services' + AUXILIARY + MAY ( schacUserStatus ) ) + +objectClass ( schacObjectClass:8 + NAME 'schacGroupMembership' + DESC 'Groups used to provide/restrict authorization to entries and attributes' + AUXILIARY + MAY ( schacProjectMembership $ schacProjectSpecificRole ) ) + +#---------------------------------------------------------------------- +# +# Experimental attributes +# + +# +# schacYearOfBirth +# +# Descrip: The year of birth for the subject it is associated with +# +# Format: Numeric value YYYY, using 4 digits for the year, as +# described in RFC 3339 'Date and Time on the Internet: +# Timestamps' as reference using the 'full-date' format from +# paragraph 5.6 but without the dashes +# +# Exammple: schacYearOfBirth: 1966 +# +attributetype ( schacExpAttr:3 + NAME 'schacYearOfBirth' + DESC 'Year of birth (format YYYY, only numeric chars)' + EQUALITY numericStringMatch + ORDERING numericStringOrderingMatch + SUBSTR numericStringSubstringsMatch + SINGLE-VALUE + SYNTAX 1.3.6.1.4.1.1466.115.121.1.36 ) + + +#---------------------------------------------------------------------- +# +# Experimental objectclasses +# + +objectClass ( schacExpObjClass:1 + NAME 'schacExperimentalOC' + DESC 'Experimental Object Class' + AUXILIARY + MAY ( schacYearOfBirth) ) + +#---------------------------------------------------------------------- +# End of SCHAC schema +#---------------------------------------------------------------------- +