Выбор правил веб-доступности с помощью .NET API

Aspose.HTML for .NET предоставляет репозиторий AccessibilityRules с принципами, рекомендациями, критериями успеха и техниками WCAG 2.0. Выберите нужные правила по коду, создайте AccessibilityValidator и проверьте HTML-файл или веб-страницу на связанные с ними проблемы доступности.

Выбор отдельных правил полезен, если проект следует определённой политике доступности или требуется проверить один тип проблем. В отчёте указано, какие проверки завершились неудачно и какие HTML-элементы требуют внимания.


Проверка HTML по выбранным правилам WCAG

В примере выбраны четыре HTML-техники, которые относятся к альтернативному тексту изображений, меткам форм, заголовкам iframe и уникальным идентификаторам элементов. Метод GetRules() возвращает соответствующие объекты IRule, после чего они передаются валидатору.

Код C# для проверки выбранных правил доступности

using System;
using System.Collections.Generic;
using System.IO;
using Aspose.Html;
using Aspose.Html.Accessibility;
using Aspose.Html.Accessibility.Results;

string documentPath = Path.Combine("data", "input.html");
string[] ruleCodes = { "H37", "H44", "H64", "H93" };

WebAccessibility webAccessibility = new WebAccessibility();

// Retrieve only the requested accessibility rules
IList<IRule> selectedRules = webAccessibility.Rules.GetRules(ruleCodes);
AccessibilityValidator validator = webAccessibility.CreateValidator(
    selectedRules,
    ValidationBuilder.All);

// Validate the document against the selected rules
using HTMLDocument document = new HTMLDocument(documentPath);
ValidationResult validationResult = validator.Validate(document);

if (!validationResult.Success)
{
    Console.WriteLine(validationResult.SaveToString());
}

Как проверить отдельные правила доступности

  1. Создайте объект WebAccessibility и получите доступ к его репозиторию Rules.
  2. Задайте коды принципов, рекомендаций, критериев или техник, необходимых для политики проверки проекта.
  3. Передайте коды методу GetRules() и убедитесь, что возвращено каждое запрошенное правило.
  4. Создайте AccessibilityValidator из полученного списка IList<IRule>.
  5. Загрузите HTML с помощью HTMLDocument , вызовите Validate() и проанализируйте или сохраните возвращённый отчёт.

Иерархия правил веб-доступности

  • Принципы. Категории верхнего уровня описывают основные цели доступного контента в WCAG.
  • Рекомендации. Каждый принцип содержит рекомендации, которые объединяют связанные требования доступности.
  • Критерии успеха. Критерии задают проверяемые требования и уровни соответствия A, AA или AAA.
  • Техники и ошибки. Коды техник, например H37, описывают способы реализации проверок, а коды ошибок – случаи нарушения критерия.
  • Выбор по коду. Метод GetRules() принимает один или несколько кодов и пропускает коды, которых нет в репозитории.
  • Целевая проверка. Выбранные правила подходят для проверки требований конкретного проекта, но ограниченный список не заменяет полный аудит доступности.

Используйте валидатор доступности HTML , если приложению нужна полная или отфильтрованная проверка вместо явного списка кодов правил.


Документация и справочник по правилам WCAG

В статье Правила веб-доступности описана полная иерархия репозитория и приведены примеры использования GetPrinciple(), GetGuideline(), GetCriterion() и GetRules(). В индексе W3C WCAG Techniques объясняются назначение и порядок проверки отдельных кодов техник и ошибок.


Установка Aspose.HTML for .NET

Установите Aspose.HTML for .NET из NuGet с помощью .NET CLI:

dotnet add package Aspose.HTML

Также можно использовать интерфейс диспетчера пакетов NuGet или выполнить Install-Package Aspose.HTML в консоли диспетчера пакетов. Подробные инструкции приведены в руководстве по установке . Чтобы протестировать API без ограничений ознакомительной версии, запросите временную лицензию .


Вопросы о правилах веб-доступности

1. Чем критерий WCAG отличается от техники?

Критерий успеха представляет проверяемое требование, по которому определяется соответствие WCAG. Техника описывает один документированный способ выполнения критерия, а ошибка – случай его невыполнения. Выполнение одной техники само по себе не подтверждает соответствие требованиям.

2. Как проверить только выбранные правила WCAG на C#?

Передайте нужные коды методу AccessibilityRules.GetRules(), создайте AccessibilityValidator с возвращённым списком IList<IRule> и проверьте HTMLDocument. В отчёт войдут только выбранные правила с учётом применимых настроек валидатора.

3. Можно ли передавать GetRules() коды принципов, рекомендаций, критериев и техник?

Да. Каждый из этих типов правил реализует IRule, поэтому их коды можно передавать методу GetRules(). Выбирайте уровень в соответствии с требуемым охватом – объект более высокого уровня включает широкую группу правил, а код техники задаёт конкретную проверку.

4. Что произойдёт, если запрошенный код правила доступности не найден?

Метод GetRules() пропускает код, которого нет в репозитории. Перед проверкой сравните возвращённую коллекцию с запрошенными кодами, чтобы опечатка или неподдерживаемый код незаметно не сократили охват проверки.

5. Подтверждает ли проверка выбранных правил соответствие WCAG?

Нет. Она подтверждает только проверку документа по выбранным автоматическим правилам. Для соответствия WCAG необходимо оценить все применимые критерии успеха, включая требования, для которых нужны ручное тестирование и экспертная оценка.

Связанные сценарии проверки веб-доступности

Перейдите к полной проверке, анализу атрибутов alt, цветового контраста или обзору API веб-доступности.