ldapMOProfile.xsl revision c9020c301eada7085bb81da1821cac5533a1f20f
0N/A ! The contents of this file are subject to the terms of the 0N/A ! Common Development and Distribution License, Version 1.0 only 0N/A ! (the "License"). You may not use this file except in compliance 0N/A ! You can obtain a copy of the license at 0N/A ! See the License for the specific language governing permissions 0N/A ! and limitations under the License. 0N/A ! When distributing Covered Code, include this CDDL HEADER in each 0N/A ! file and include the License file at 0N/A ! add the following below this CDDL HEADER, with the fields enclosed 0N/A ! by brackets "[]" replaced with your own identifying information: 0N/A ! Portions Copyright [yyyy] [name of copyright owner] 0N/A ! Portions Copyright 2007 Sun Microsystems, Inc. 0N/A<
xsl:
stylesheet version="1.0" 0N/A <
xsl:
output method="text" encoding="us-ascii" />
0N/A <
xsl:
template match="/">
0N/A <
xsl:
message terminate="yes">
0N/A select="concat('No object class found for managed object definition ', $this-name)" />
0N/A select="concat('objectclass=', 0N/A <
xsl:
for-
each select="$this-all-properties">
0N/A <
xsl:
sort select="@name" />
0N/A <
xsl:
message terminate="yes">
0N/A select="concat('No attribute type found for property ', @name, ' in managed object definition ', $this-name)" />
0N/A select="concat('attribute.', 0N/A normalize-space(@name), 665N/A <
xsl:
for-
each select="$this-all-relations">
0N/A <
xsl:
sort select="@name" />
0N/A <
xsl:
if test="not(adm:profile[@name='ldap']/ldap:rdn-sequence)">
0N/A <
xsl:
message terminate="yes">
0N/A select="concat('No RDN sequence found for relation ', @name, ' in managed object definition ', $this-name)" />
0N/A select="concat('rdn.', 0N/A normalize-space(@name), 0N/A normalize-space(adm:profile[@name='ldap']/ldap:rdn-sequence), 0N/A test="adm:profile[@name='ldap']/ldap:naming-attribute">
0N/A <
xsl:
if test="not(adm:one-to-many)">
0N/A <
xsl:
message terminate="yes">
0N/A select="concat('Naming attribute specified for relation ', 0N/A @name, ' in managed object definition ', 0N/A $this-name, ' which is not a one-to-many relation.')" />
0N/A <
xsl:
if test="adm:one-to-many/@naming-property">
0N/A <
xsl:
message terminate="yes">
0N/A select="concat('Naming attribute specified for one-to-many relation ', 0N/A @name, ' in managed object definition ', 0N/A $this-name, ' which uses a naming property.')" />
0N/A select="concat('naming-attribute.', 0N/A normalize-space(@name), 0N/A normalize-space(adm:profile[@name='ldap']/ldap:naming-attribute), 0N/A select="concat('naming-attribute.', normalize-space(@name), '=cn
')" />