From ae57abea41b1a1c805fee27ffcfeabc0ae07e969 Mon Sep 17 00:00:00 2001
From: Mark Craig <mark.craig@forgerock.com>
Date: Mon, 31 Mar 2014 07:17:12 +0000
Subject: [PATCH] Backport CR-3283 Fix for Server docs patch for OPENDJ-980: Allow copy/ paste of formatted shell commands; OPENDJ-1376: Add <userinput> and potential <computeroutput> to <screen> content

---
 opends/src/main/docbkx/admin-guide/chap-schema.xml |  162 +++++++++++++++++++++++++++++++-----------------------
 1 files changed, 93 insertions(+), 69 deletions(-)

diff --git a/opends/src/main/docbkx/admin-guide/chap-schema.xml b/opends/src/main/docbkx/admin-guide/chap-schema.xml
index b0ca409..ef9d371 100644
--- a/opends/src/main/docbkx/admin-guide/chap-schema.xml
+++ b/opends/src/main/docbkx/admin-guide/chap-schema.xml
@@ -20,15 +20,15 @@
   !
   ! CCPL HEADER END
   !
-  !      Copyright 2011-2013 ForgeRock AS
+  !      Copyright 2011-2014 ForgeRock AS
   !    
 -->
 <chapter xml:id='chap-schema'
  xmlns='http://docbook.org/ns/docbook' version='5.0' xml:lang='en'
  xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
- xsi:schemaLocation='http://docbook.org/ns/docbook http://docbook.org/xml/5.0/xsd/docbook.xsd'
- xmlns:xlink='http://www.w3.org/1999/xlink'
- xmlns:xinclude='http://www.w3.org/2001/XInclude'>
+ xsi:schemaLocation='http://docbook.org/ns/docbook
+                     http://docbook.org/xml/5.0/xsd/docbook.xsd'
+ xmlns:xlink='http://www.w3.org/1999/xlink'>
  <title>Managing Schema</title>
  <indexterm><primary>Schema</primary></indexterm>
  
@@ -64,10 +64,14 @@
     of directory entries, such as <literal>givenName</literal> or
     <literal>mail</literal>.</para>
     <para>Here is an example of an attribute type definition.</para>
-    <programlisting language="ldif"># Attribute type definition
+
+    <programlisting language="ldif">
+# Attribute type definition
 attributeTypes: ( 0.9.2342.19200300.100.1.3 NAME ( 'mail' 'rfc822Mailbox' )
   EQUALITY caseIgnoreIA5Match SUBSTR caseIgnoreIA5SubstringsMatch
-  SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} X-ORIGIN 'RFC 4524' )</programlisting>
+  SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} X-ORIGIN 'RFC 4524' )
+    </programlisting>
+
     <para>Attribute type definitions start with an object identifier (OID),
     and generally a short name or names that are easier to remember than the
     OID. The attribute type definition can specify how attribute values
@@ -83,10 +87,14 @@
     object classes include <literal>person</literal> and
     <literal>organizationalUnit</literal>.</para>
     <para>Here is an example of an object class definition.</para>
-    <programlisting language="ldif"># Object class definition
+
+    <programlisting language="ldif">
+# Object class definition
 objectClasses: ( 2.5.6.6 NAME 'person' SUP top STRUCTURAL MUST ( sn $ cn )
   MAY ( userPassword $ telephoneNumber $ seeAlso $ description )
-  X-ORIGIN 'RFC 4519' )</programlisting>
+  X-ORIGIN 'RFC 4519' )
+    </programlisting>
+
     <para>Entries all have an attribute identifying their object classes,
     called <literal>objectClass</literal>.</para>
     <para>Object class definitions start with an object identifier (OID), and
@@ -155,10 +163,11 @@
     <para>OpenDJ has the following schema definition for the user ID
     attribute.</para>
 
-    <programlisting language="ldif"
-    >attributeTypes: ( 0.9.2342.19200300.100.1.1 NAME ( 'uid' 'userid' )
+    <programlisting language="ldif">
+attributeTypes: ( 0.9.2342.19200300.100.1.1 NAME ( 'uid' 'userid' )
  EQUALITY caseIgnoreMatch SUBSTR caseIgnoreSubstringsMatch
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} X-ORIGIN 'RFC 4519' )</programlisting>
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} X-ORIGIN 'RFC 4519' )
+    </programlisting>
 
     <para>When finding an equality match for your search, OpenDJ uses the
     <literal>caseIgnoreMatch</literal> matching rule to check for user ID
@@ -171,7 +180,7 @@
     in languages other than English. You can also list matching rules by
     using the <command>dsconfig</command> command.</para>
 
-    <para>As you can read in examples like, <link
+    <para>As you can read in examples like, <link xlink:show="new"
     xlink:href="admin-guide#extensible-match-search"
     xlink:role="http://docbook.org/xlink/role/olink"><citetitle>Search: List
     Active Accounts</citetitle></link>, OpenDJ matching rules enable
@@ -254,8 +263,9 @@
   apply the definitions in production by adapting the content for use with the
   <command>ldapmodify</command> command, for example.</para>
   
-  <screen>$ cat config/schema/99-user.ldif 
-dn: cn=schema
+  <screen>
+$ <userinput>cat config/schema/99-user.ldif</userinput>
+<computeroutput>dn: cn=schema
 objectClass: top
 objectClass: ldapSubentry
 objectClass: subschema
@@ -266,36 +276,38 @@
 objectClasses: ( temporary-fake-oc-id NAME 'myCustomObjClass
  ' SUP top AUXILIARY MAY myCustomAttribute )
 modifiersName: cn=Directory Manager,cn=Root DNs,cn=config
-modifyTimestamp: 20110620095948Z
+modifyTimestamp: 20110620095948Z</computeroutput>
 </screen>
 
   <para>To test your schema definition, add the object class and attribute
   to an entry.</para>
   
-  <screen>$ cat custom-attr.ldif 
-dn: uid=bjensen,ou=People,dc=example,dc=com
+  <screen>
+$ <userinput>cat custom-attr.ldif</userinput>
+<computeroutput>dn: uid=bjensen,ou=People,dc=example,dc=com
 changetype: modify
 add: objectClass
 objectClass: myCustomObjClass
 -
 add: myCustomAttribute
-myCustomAttribute: Testing 1, 2, 3...
+myCustomAttribute: Testing 1, 2, 3...</computeroutput>
 
-$ ldapmodify
- --port 1389
- --bindDN "cn=Directory Manager"
- --bindPassword password
- --filename custom-attr.ldif
-Processing MODIFY request for uid=bjensen,ou=People,dc=example,dc=com
-MODIFY operation successful for DN uid=bjensen,ou=People,dc=example,dc=com
-$ ldapsearch
- --port 1389
- --baseDN dc=example,dc=com
- uid=bjensen
- myCustomAttribute
-dn: uid=bjensen,ou=People,dc=example,dc=com
-myCustomAttribute: Testing 1, 2, 3...
-</screen>
+$ <userinput>ldapmodify \
+ --port 1389 \
+ --bindDN "cn=Directory Manager" \
+ --bindPassword password \
+ --filename custom-attr.ldif</userinput>
+<computeroutput>Processing MODIFY request for uid=bjensen,ou=People,dc=example,dc=com
+MODIFY operation successful for DN uid=bjensen,ou=People,dc=example,dc=com</computeroutput>
+
+$ <userinput>ldapsearch \
+ --port 1389 \
+ --baseDN dc=example,dc=com \
+ uid=bjensen \
+ myCustomAttribute</userinput>
+<computeroutput>dn: uid=bjensen,ou=People,dc=example,dc=com
+myCustomAttribute: Testing 1, 2, 3...</computeroutput>
+  </screen>
 
   <para>In addition to supporting the standard schema definitions that are
   described in <link xlink:href="http://tools.ietf.org/html/rfc4512#section-4.1"
@@ -345,9 +357,11 @@
      <para>Used to define a syntax that is an enumeration of values. The
      following attribute syntax description defines a syntax allowing four
      possible attribute values for example.</para>
-     <programlisting language="ldif"
-     >ldapSyntaxes: ( security-label-syntax-oid DESC 'Security Label'
- X-ENUM ( 'top-secret' 'secret' 'confidential' 'unclassified' ) )</programlisting>
+
+     <programlisting language="ldif">
+ldapSyntaxes: ( security-label-syntax-oid DESC 'Security Label'
+ X-ENUM ( 'top-secret' 'secret' 'confidential' 'unclassified' ) )
+     </programlisting>
     </listitem>
    </varlistentry>
 
@@ -360,9 +374,11 @@
      ><literal>java.util.regex.Pattern</literal></link>. The following attribute
      syntax description defines a simple, lenient SIP phone URI syntax
      check.</para>
-     <programlisting language="ldif"
-     >ldapSyntaxes: ( simple-sip-uri-syntax-oid DESC 'Lenient SIP URI Syntax'
- X-PATTERN '^sip:[a-zA-Z0-9.]+@[a-zA-Z0-9.]+(:[0-9]+)?$' )</programlisting>
+
+     <programlisting language="ldif">
+ldapSyntaxes: ( simple-sip-uri-syntax-oid DESC 'Lenient SIP URI Syntax'
+ X-PATTERN '^sip:[a-zA-Z0-9.]+@[a-zA-Z0-9.]+(:[0-9]+)?$' )
+     </programlisting>
     </listitem>
    </varlistentry>
 
@@ -373,9 +389,11 @@
      OpenDJ does not implement. The following example substitutes Directory
      String syntax, which has OID 1.3.6.1.4.1.1466.115.121.1.15, for a syntax
      that OpenDJ does not implement.</para>
-     <programlisting language="ldif"
-     >ldapSyntaxes: ( non-implemented-syntax-oid DESC 'Not Implemented in OpenDJ'
- X-SUBST '1.3.6.1.4.1.1466.115.121.1.15' )</programlisting>
+
+     <programlisting language="ldif">
+ldapSyntaxes: ( non-implemented-syntax-oid DESC 'Not Implemented in OpenDJ'
+ X-SUBST '1.3.6.1.4.1.1466.115.121.1.15' )
+     </programlisting>
     </listitem>
    </varlistentry>
   </variablelist>
@@ -417,28 +435,32 @@
   classes defined per entry, you can relax schema checking to warn rather
   than reject entries having this issue.</para>
   
-  <screen>$ dsconfig
- set-global-configuration-prop
- --hostname opendj.example.com
- --port 4444
- --bindDN "cn=Directory Manager"
- --bindPassword password
- --set single-structural-objectclass-behavior:warn
- --trustAll
- --no-prompt</screen>
+  <screen>
+$ <userinput>dsconfig \
+ set-global-configuration-prop \
+ --hostname opendj.example.com \
+ --port 4444 \
+ --bindDN "cn=Directory Manager" \
+ --bindPassword password \
+ --set single-structural-objectclass-behavior:warn \
+ --trustAll \
+ --no-prompt</userinput>
+  </screen>
 
   <para>You can allow attribute values that do not respect the defined syntax
   with the <command>dsconfig</command> command as well.</para>
   
-  <screen>$ dsconfig
- set-global-configuration-prop
- --hostname opendj.example.com
- --port 4444
- --bindDN "cn=Directory Manager"
- --bindPassword password
- --set invalid-attribute-syntax-behavior:warn
- --trustAll
- --no-prompt</screen>
+  <screen>
+$ <userinput>dsconfig \
+ set-global-configuration-prop \
+ --hostname opendj.example.com \
+ --port 4444 \
+ --bindDN "cn=Directory Manager" \
+ --bindPassword password \
+ --set invalid-attribute-syntax-behavior:warn \
+ --trustAll \
+ --no-prompt</userinput>
+  </screen>
 
   <para>You can even turn off schema checking altogether, although turning
   off schema checking only really makes sense when you are absolutely sure
@@ -446,15 +468,17 @@
   you simply want to turn off schema checking temporarily to speed up import
   processing.</para>
   
-  <screen>$ dsconfig
- set-global-configuration-prop
- --hostname opendj.example.com
- --port 4444
- --bindDN "cn=Directory Manager"
- --bindPassword password
- --set check-schema:false
- --trustAll
- --no-prompt</screen>
+  <screen>
+$ <userinput>dsconfig \
+ set-global-configuration-prop \
+ --hostname opendj.example.com \
+ --port 4444 \
+ --bindDN "cn=Directory Manager" \
+ --bindPassword password \
+ --set check-schema:false \
+ --trustAll \
+ --no-prompt</userinput>
+  </screen>
  </section>
 
  <section xml:id="standard-schema">

--
Gitblit v1.10.0