...
The schema for this is defined by:
<?xml version="1.0" encoding="UTF-8"?>
Wiki Markup
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:element name="consultants">
<xs:complexType>
<xs:sequence>
<xs:element
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="consultant"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="consultant">
<xs:complexType>
<xs:sequence>
<xs:element
<xs:complexType>
<xs:sequence>
<xs:element ref="name"/>
<xs:element minOccurs="0" ref="logo"/>
<xs:element maxOccurs="unbounded" ref="discipline"/>
<xs:element ref="description"/>
<xs:element ref="website"/>
<xs:element minOccurs="0" ref="email"/>
<xs:element minOccurs="0" ref="phone"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="name" type="xs:string"/>
<xs:element name="logo" type="xs:anyURI"/>
<xs:element name="discipline" type="discipline"/>
<xs:element name="description" type="description"/>
<xs:element name="website" type="xs:anyURI"/>
<xs:element name="email" type="email-address"/>
<xs:element name="phone" type="xs:string"/>
<xs:simpleType name="email-address">
<xs:restriction base="xs:string">
<xs:pattern value="\[^@\@]+@\[^\.\]+\..+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="description">
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="300"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="discipline">
<xs:restriction base="xs:string">
<xs:enumeration value="Deployment"/>
<xs:enumeration value="Migration"/>
<xs:enumeration value="Extensions"/>
<xs:enumeration value="Training"/>
<xs:enumeration value="Customization"/>
<xs:enumeration value="Other"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
Consults could submit or edit their entries via a CMS patch, a Bugzilla issue or via the mailing list.
...