Schéma d’attribut d’enregistrement

Les enregistrements peuvent avoir des attributs spécifiques à l’application qui sont une séquence de paires nom ou valeur représentées sous la forme d’une chaîne XML dans le membre pszAttributes de la structure PEER_RECORD . Les attributs sont utilisés pour filtrer une recherche d’enregistrements lancée par des appels à PeerGroupSearchRecords, qui prend un filtre de recherche XML spécifié dans le format de requête de recherche d’enregistrement en tant que paramètre.

Un attribut d’enregistrement peut être l’un des trois types suivants :

  • int est une valeur entière.
  • date est une valeur datetime représentée comme l’un des formats standard décrits dans https://www.w3.org/TR/NOTE-datetime.
  • string est une valeur de chaîne Unicode.

La liste suivante identifie les noms d’attributs spécifiques réservés par l’infrastructure homologue :

  • peerlastmodifiedby
  • peercreatorid
  • peerlastmodificationtime
  • peerrecordid
  • peerrecordtype
  • peercreationtime
  • peerlastmodificationtime

Exemple de définition d’attributs d’enregistrement

L’exemple de schéma suivant montre comment définir des attributs d’enregistrement :

<?xml version="1.0" encoding="utf-8" ?>
<xs:schema xmlns:xs="https://www.w3.org/2001/XMLSchema">
   <xs:simpleType name="alphanum">
       <xs:restriction base="xs:string">
          <xs:pattern value="\c+" />
       </xs:restriction>
   </xs:simpleType>
   <xs:complexType name="attributeType">
       <xs:simpleContent>
          <xs:extension base="xs:string">
                <xs:attribute name="name" type="alphanum" />
                <xs:attribute name="type">
                    <xs:simpleType>
                        <xs:restriction base="alphanum">
                           <xs:enumeration value="string"/>
                           <xs:enumeration value="date"/>
                           <xs:enumeration value="int"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:attribute>
           </xs:extension>
       </xs:simpleContent>
    </xs:complexType>
    <xs:element name="attributes">
       <xs:complexType>
           <xs:sequence>
                <xs:element name="attribute" type="attributeType" minOccurs="0" maxOccurs="unbounded" />
           </xs:sequence>
       </xs:complexType>
    </xs:element>
</xs:schema>  

Notes

Les noms d’attributs doivent être des séquences de caractères alphanumériques. Les caractères spéciaux tels que les traits d’union (« - ») et les traits de soulignement (« _ ») ne sont pas autorisés dans un nom d’attribut.

 

L’exemple suivant d’une séquence d’attributs XML contient les attributs AuthenticationType et AuthExpires personnalisés qui apparaissent dans le membre pszAttributes de PEER_RECORD.

<attributes>
  <attribute name="AuthenticationType" type="string">Kerberos</attribute><attribute name="AuthExpires" type="date">2002-01-31</attribute>
<attributes>