From 25c232dabcfbaebb8295916bed92a56d9a18966f Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Wed, 13 Jun 2007 22:21:25 +0000
Subject: [PATCH] Add support for tagging managed object definitions so that similar types of managed object can be grouped together. Tagging will enable us to automatically generate more user-friendly documentation and administration tools as a result of them being easier to navigate and search. For example, an administration CLI will be able to split the available set of sub-commands into categories, thus making it easier for administrators to find the sub-command that they need.
---
opends/resource/admin/admin.xsd | 84 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 84 insertions(+), 0 deletions(-)
diff --git a/opends/resource/admin/admin.xsd b/opends/resource/admin/admin.xsd
index 81124e7..d7c2d96 100644
--- a/opends/resource/admin/admin.xsd
+++ b/opends/resource/admin/admin.xsd
@@ -75,6 +75,31 @@
</xsd:documentation>
</xsd:annotation>
</xsd:element>
+ <xsd:element name="tag" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ The name of a tag defined in the root configuration
+ definition. Tags can be used to group related managed object
+ definitions together. For example, all managed objects that
+ are associated with password management might be tagged with
+ "password" (assuming that there is a "password" tag defined
+ in the root configuration). Tags are inherited by derived
+ managed object definitions.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:attribute name="name" type="tns:name-type"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ The name of the referenced tag. There must be an
+ accompanying tag definition in the root configuration
+ definition.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
<xsd:element name="profile" type="tns:profile-type" minOccurs="0"
maxOccurs="unbounded">
<xsd:annotation>
@@ -1419,6 +1444,65 @@
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
+ <xsd:element name="tag-definition" minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ Defines a tag which can be used to group related types
+ of managed object. Administration tools can take
+ advantage of managed object tags to make it easier for
+ users to discover related components.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="synopsis">
+ <xsd:annotation>
+ <xsd:documentation>
+ A brief description of this tag. The description
+ should describe, preferably in one sentence, the
+ types of managed object that this tag applies
+ to. The synopsis should be suitable for use in
+ applications such as tool-tips, CLI help, and
+ the summary description in Javadoc. It is
+ possible to embed rich content including XHTML
+ markup (this will only be used where supported).
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType mixed="true">
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:any
+ namespace="http://www.w3.org/1999/xhtml"
+ processContents="lax" />
+ <xsd:element name="product-name">
+ <xsd:annotation>
+ <xsd:documentation>
+ The name of the product associated with
+ this definition.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType />
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="tns:name-type"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ The name of this tag. The name should describe as
+ concisely as possible the purpose of this tag and
+ should be suitable for use in Java method names
+ (e.g. getters and setters). The property name
+ should be a string comprising of short lower-case
+ words joined with hyphens "-". For example,
+ "security".
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
</xsd:sequence>
<xsd:attribute name="name" type="tns:name-type"
fixed="root">
--
Gitblit v1.10.0