Accessibility Validator – Vérification de l'accessibilité des sites web selon les WCAG
Créer un validateur
Aspose.HTML for .NET fournit l’espace de noms Aspose.Html.Accessibility, qui est destiné à toutes les manipulations et vérifications liées à l’accessibilité du web. La classe AccessibilityValidator initialise un objet utilisé pour valider le document en fonction des critères de réussite des WCAG. La classe n’a pas de constructeur interne, les utilisateurs ne peuvent donc pas créer directement un objet de la classe. Pour créer un objet, vous devez utiliser le conteneur WebAccessibility.
Pour créer un validateur, initialisez l’objet de la classe WebAccessibility comme suit :
1 // Initialize webAccessibility container
2 var webAccessibility = new WebAccessibility();
L’objet webAccessibility
possède les méthodes de base suivantes pour créer un validateur :
Methods | Description |
---|---|
CreateValidator() | An instance of AccessibilityValidator is created according to all the rules with a ValidationBuilder.All object. |
CreateValidator(Action<ValidationBuilder> builder ) | An instance of AccessibilityValidator is created according to all the rules, where the builder is a lambda expression with a list of methods-settings. |
CreateValidator(ValidationBuilder builder ) | An instance of AccessibilityValidator is created according to all the rules with a ValidationBuilder object. |
CreateValidator(IRule rule ) | A new AccessibilityValidator instance is created for a specific rule, given the full parameters of the ValidationBuilder.All object. |
CreateValidator(IRule rule, Action<ValidationBuilder> builder ) | Initializes a new instance of the AccessibilityValidator that contains a rule that matches the builder’s settings, where the builder is a lambda expression with a list of methods-settings. |
CreateValidator(IRule rule, ValidationBuilder builder ) | Initializes a new instance of the AccessibilityValidator that contains a rule that matches the builder’s settings. The builder instance is a static instance of the class ValidationBuilder. |
CreateValidator(IList<IRule> rules ) | An AccessibilityValidator instance is created for a specific rules list. |
CreateValidator(IList<IRule> rules, ValidationBuilder builder ) | An AccessibilityValidator instance is created for a specific list of rules based on the settings of the ValidationBuilder object. |
CreateValidator(IList<IRule> rules, Action<ValidationBuilder> builder ) | An AccessibilityValidator instance is created for a specific list of rules where the builder is a lambda expression with a list of settings ValidationBuilder. |
Voici des exemples d’initialisation d’un objet
AccessibilityValidator. Le premier validateur (validator
) est une instance complète créée avec ValidationBuilder.All
, appliquant toutes les règles du référentiel. Un principe spécifique est récupéré en utilisant son code, et un second validateur (validatorRule
) est créé pour les règles associées à ce principe tout en adhérant aux mêmes paramètres globaux. Enfin, un troisième validateur (validatorCSS
) est mis en place à l’aide d’une expression lambda pour affiner les critères de validation, en ciblant tous les niveaux et en incorporant des règles basées sur les CSS. Cette approche offre une certaine souplesse dans l’adaptation des validateurs à des contrôles d’accessibilité spécifiques, ce qui permet de mettre en place des stratégies de validation ciblées.
1 // Initialize a webAccessibility container
2 var webAccessibility = new WebAccessibility();
3
4 // Create an accessibility validator with a static instance for all rules from repository that match the builder settings
5 var validator = webAccessibility.CreateValidator(ValidationBuilder.All);
6
7 // Get a principle by code
8 IRule rule = webAccessibility.Rules.GetPrinciple("1");
9
10 // Create an accessibility validator for one principle, whose rules match the instance settings ValidationBuilder.All
11 var validatorRule = webAccessibility.CreateValidator(rule, ValidationBuilder.All);
12
13 // Create an accessibility validator with lambda-expression settings for all rules from repository that match the builder settings inside a project
14 var validatorCSS = new AccessibilityValidator(builder => builder.AllLevels().UseCSS());
Classe ValidationBuilder
La classe ValidationBuilder définit une classe d’aide qui peut être utilisée pour personnaliser la liste des règles à vérifier par le validateur. La classe ValidationBuilder définit des méthodes et fournit des implémentations concrètes des étapes de configuration.
Method/Property | Description |
---|---|
ValidationBuilder.None | None of the parameter settings are specified, it is convenient for creating a filter from scratch, when you need to specify which levels, technologies, etc. should be used when checking. |
ValidationBuilder.Default | Rules for General technologies, Failures for all levels of criteria will be used when checking the document. |
ValidationBuilder.All | The verification will take place at all levels of criteria, for all technologies, including HTML,CSS,Crtipt. |
SetHTMLTags(params string[] tags ) | The user can specify a list of html-tags to be checked in the document. |
AllTechnologies() | All technologies will be applied when checking the document. |
UseHTML() | The method indicates that elements of the HTML technology will be checked in the document. |
UseCSS() | The method indicates that elements of the CSS technology will be checked in the document. |
UseScript() | The method indicates that elements of the ClientSide-Script technology will be checked in the document. |
UseFailures() | The method indicates that failures rules will be checked in the document. |
UseGeneral() | The method indicates that general rules will be checked in the document. |
AllLevels() | The method sets all criteria levels and indicates that the document will be checked according to the criteria of all three levels. |
UseLowestLevel() | The method determines that the document must be validated against low-level criteria. |
UseMiddleLevel() | The method determines that the document must be validated against mid-level criteria. |
UseHighestLevel() | The method determines that the document must be validated against high-level criteria. |
L’extrait de code suivant est un exemple de création du constructeur et de son passage en tant que paramètre au validateur :
1 // Initialize a webAccessibility container
2 WebAccessibility webAccessibility = new WebAccessibility();
3
4 // Create an accessibility validator with object All
5 var validator = webAccessibility.CreateValidator(ValidationBuilder.All);
6
7 // Create an accessibility validator with empty filters, and set's html and css technologies, low and middle levels
8 var validatorHTML = webAccessibility.CreateValidator(ValidationBuilder.None.UseHTML()
9 .UseCSS()
10 .UseLowestLevel()
11 .UseMiddleLevel());
12
13 // Create an accessibility validator with lambda-expression for all levels and only CSS technologies
14 var validatorCSS = webAccessibility.CreateValidator(builder => builder.AllLevels().UseCSS());
15
16 // Create an accessibility validator for all levels of criterion and only img and input elements will be checking
17 var validatorIMG = webAccessibility.CreateValidator(builder => builder.AllLevels()
18 .AllTechnologies()
19 .SetHTMLTags("img", "input"));
Classe ValidationResult
La classe
ValidationResult est l’élément central de la validation de l’accessibilité du web. Elle encapsule les résultats des contrôles d’accessibilité, en fournissant un moyen structuré d’analyser, de gérer et d’agir sur les résultats des opérations de validation. Pour l’utiliser, instanciez un objet validateur et invoquez la méthode
Validate(document
), en lui passant le document à valider. La méthode renvoie un objet ValidationResult
contenant les résultats du processus de validation.
Propriétés principales :
Property | Description |
---|---|
Success | Returns a boolean that says whether the validation succeeded. |
Details | Returns Collection of RuleValidationResult objects containing details about any validation results. |
Valider le document
Pour lancer la validation des documents, vous devez effectuer les étapes suivantes :
- Utilisez le constructeur WebAccessibility() pour créer une instance de la classe WebAccessibility responsable de la vérification de l’accessibilité du web.
- Appelez la méthode
CreateValidator() pour créer un objet
validator
. - Charge un document HTML à l’aide de l’un des constructeurs HTMLDocument().
- Utilisez la méthode
Validate(
document
) pour valider le document en fonction des règles d’accessibilité du web. - Le résultat de la validation est une instance de la classe ValidationResult.
- Imprimez les résultats de la validation sur la console et utilisez-les si nécessaire pour une analyse plus approfondie.
Voici un exemple d’appel à la validation d’un document. Le code suivant écrira dans la console quelles règles ont passé le test et lesquelles ne l’ont pas passé :
1// Validate HTML against WCAG rules using C#
2
3// Initialize a webAccessibility container
4WebAccessibility webAccessibility = new WebAccessibility();
5
6// Create an accessibillity validator with static instance for all rules from repository that match the builder settings
7AccessibilityValidator validator = webAccessibility.CreateValidator(ValidationBuilder.All);
8
9// Prepare a path to a source HTML file
10string documentPath = Path.Combine(DataDir, "input.html");
11
12// Initialize an object of the HTMLDocument class
13using (HTMLDocument document = new HTMLDocument(documentPath))
14{
15 // Check the document
16 ValidationResult validationResult = validator.Validate(document);
17
18 // Checking for success
19 if (!validationResult.Success)
20 {
21 // Get a list of RuleValidationResult Details
22 foreach (RuleValidationResult detail in validationResult.Details)
23 {
24 Console.WriteLine("{0}:{1} = {2}", detail.Rule.Code, detail.Rule.Description, detail.Success);
25 }
26 }
27}
Une description plus complète peut être trouvée dans l’article Validation Results – Check Web Accessibility in C#.
Voir aussi
- Dans le chapitre Vérification de l’accessibilité du Web, vous apprendrez à vérifier l’accessibilité d’un site Web pour qu’il soit conforme aux WCAG ou qu’il réponde uniquement à des critères spécifiques en utilisant les classes et les méthodes des espaces de noms Aspose.Html.Accessibility et Aspose.Html.Accessibility.Results.
- L’article Accessibilité aux lecteurs d’écran explique comment concevoir un site web pour l’accessibilité aux lecteurs d’écran conformément aux directives WCAG en utilisant l’API Aspose.HTML for .NET.
- Consultez l’article Vérifier le contraste des couleurs en C# si vous souhaitez apprendre à ajuster correctement le contraste de votre contenu web conformément aux normes WCAG, l’autorité mondiale en matière d’accessibilité du web. Vous découvrirez comment tester l’accessibilité du contraste des couleurs à l’aide de C# et rendre votre contenu web facile à lire pour tous les utilisateurs.
- Dans l’article Règles d’accessibilité du web, vous apprendrez à utiliser la classe AccessibilityRules, qui est un référentiel d’exigences, de critères de réussite et de techniques WCAG 2, pour les contrôles d’accessibilité du web.
- L’article Erreurs et avertissements traite des classes et des interfaces qui permettent de collecter des informations sur les erreurs et les avertissements lors des tests d’accessibilité des sites web. Il se concentre sur les critères d’échec et les méthodes qui signalent les erreurs, et fournit un exemple en C# pour récupérer les erreurs d’accessibilité du web après avoir testé un document HTML.
Aspose.HTML propose gratuitement en ligne Vérificateur d’accessibilité Web. Cet outil analyse les pages web, valide leur conformité aux WCAG, identifie les problèmes et suggère des améliorations. Il vous permet de déterminer l’ampleur des corrections nécessaires et l’écart entre l’état actuel de votre site web ou de votre document HTML et les exigences des WCAG.