Rétro-génération XSD : AnyAttribute
La balise "AnyAttribute" définit un groupe qui peut contenir n'importe quel type d'attribut. Vous pouvez cependant restreindre le groupe d'attributs à un ensemble d'attributs appartenant à certains espaces de nommage.
"AnyAttribute" est modélisée par une classe de stéréotype "schema Group" dans sa définition. La déclaration de ce groupe est représentée par une composition UML, et l'occurrence de groupe est représentée par le rôle de classe UML du côté de la classe Groupe.
Le paramètre de génération XDD Order sur classe vaut "aucun".
Le paramètre de génération XSD Any vaut "anyAttribute".
Si le groupe n'a pas de frère, le nom de la classe est "AnyAttribute" . Sinon, il vaut "AnyAttribute" suivi de l'index d'ordre du groupe.
Attributs de AnyAttribute
• Id : est modélisé par le paramètre de génération XSD Id sur la classe.
• Namespace : est modélisé par le paramètre de génération XSD Namespace. Il est à valeurs tabulées et prend ses valeurs dans la liste suivante :
• ##any : n'importe quel attribut convient,
• ##other : n'importe quel attribut n'appartenant pas à l'espace de nommage courant,
• Liste d'uris : n'importe quel attribut appartenant à la liste des espaces de nommage,
• ##targetNamespace : n'importe quel attribut appartenant à l'espace de nommage courant,
• ##Local : n'importe quel élément local à un type.
• processContents : est modélisé par le paramètre de génération XSD processContents. Il est à valeurs tabulées et prend ses valeurs dans la liste suivante :
• lax : si l'élément a un type défini et connu, l'élément doit être valide par rapport à sa définition. Sinon, il doit juste être bien formé.
• skip : aucune contrainte n'est appliquée. L'élément doit juste être bien formé.
• strict : l'élément doit être validé à partir du moment où son type est idéntifié dans le document instance par un type défini ou par un type référencé par l'attribut xsi :type.