접근 가능한 이름 및 설명 계산 1.2

W3C 작업 초안

이 문서에 대한 자세한 정보
이 버전:
https://www.w3.org/TR/2026/WD-accname-1.2-20260430/
최신 공개 버전:
https://www.w3.org/TR/accname-1.2/
최신 편집자 초안:
https://w3c.github.io/accname/
이력:
https://www.w3.org/standards/history/accname-1.2/
커밋 이력
최신 권고안:
https://www.w3.org/TR/accname/
편집자:
Bryan Garaventa (초대 전문가)
Melanie Sumner (초대 전문가)
이전 편집자:
Michael Cooper (W3C)
Joanmarie Diggs (Igalia, S.L.) (2021년 3월까지 편집자)
Richard Schwerdtfeger (Knowbility) (2017년 10월까지 편집자)
Joseph Scheuhammer (Inclusive Design Research Centre, OCAD University) (편집자 2017년 5월까지)
James Craig (Apple Inc.) (2016년 5월까지 편집자)
Andi Snow-Weaver (IBM) (2012년 12월까지 편집자)
Aaron Leventhal (IBM) (2009년 1월까지 편집자)
피드백:
GitHub w3c/accname (풀 리퀘스트, 새 이슈, 열린 이슈)

초록

이 문서는 사용자 에이전트가 웹 콘텐츠 언어로부터 이름설명접근 가능한 객체에 대해 어떻게 결정하는지를 설명한다. 이 정보는 다시 접근성 API를 통해 노출되어 보조 기술이 이러한 객체를 식별하고 그 이름이나 설명을 사용자에게 제시할 수 있게 한다. 이름과 설명을 결정해야 하는 알고리즘을 문서화하면 서로 다른 접근성 API 간에 이러한 속성이 상호운용 가능하게 노출되도록 촉진하고, 이 정보가 작성자의 의도와 일치하는 방식으로 나타나도록 보장하는 데 도움이 된다.

접근 가능한 이름 및 설명 계산 명세는 여러 콘텐츠 기술에 걸쳐 적용되는 지원을 정의한다. 여기에는 범용 WAI-ARIA [WAI-ARIA] 역할, 상태, 그리고 속성에서 제공하는 접근 가능한 이름 및 설명뿐 아니라 개별 콘텐츠 언어에 특화된 기능도 포함된다.

이 문서는 Accessible Name and Description Computation 1.1 [ACCNAME-1.1] W3C 권고안의 접근 가능한 이름 및 설명 지침을 갱신하며, 최종적으로 이를 대체할 것이다. 이는 WAI-ARIA 개요에서 설명하는 WAI-ARIA 모음의 일부이다.

이 문서의 상태

이 절은 이 문서가 발행된 시점의 상태를 설명한다. 현재 W3C 출판물 목록과 이 기술 보고서의 최신 개정본은 W3C 표준 및 초안 색인에서 확인할 수 있다.

이 문서는 Accessible Rich Internet Applications Working Group에 의해 권고안 트랙을 사용하여 작업 초안으로 발행되었다.

작업 초안으로 발행되었다는 것이 W3C와 그 회원들의 승인을 의미하지는 않는다.

이 문서는 초안 문서이며 언제든지 다른 문서로 갱신, 대체 또는 폐기될 수 있다. 진행 중인 작업 이외의 것으로 이 문서를 인용하는 것은 적절하지 않다.

이 문서는 W3C 특허 정책에 따라 운영되는 그룹에 의해 제작되었다. W3C는 해당 그룹의 결과물과 관련하여 이루어진 모든 특허 공개의 공개 목록을 유지한다. 그 페이지에는 특허 공개 방법에 대한 지침도 포함되어 있다. 개인이 그 개인이 필수 청구항을 포함한다고 믿는 특허에 대한 실제 지식을 가지고 있는 경우, 그 개인은 W3C 특허 정책 제6절에 따라 해당 정보를 공개해야 한다.

이 문서는 2025년 8월 18일 W3C 프로세스 문서의 적용을 받는다.

1. 소개

이 절은 비규범적이다.

사용자 에이전트DOM [DOM]에서 정보를 획득하고 접근성 트리라고 하는 병렬 구조를 생성하며, 이는 접근 가능한 객체로 구성된다. 접근 가능한 객체는 자신의 역할, 상태, 그리고 속성에 대한 정보를 제공한다. 예로는 역할이 menuitem이고, 현재 enabled 상태이며, haspopup 속성을 가져 하위 메뉴로 이어짐을 나타내는 접근 가능한 객체가 있다.

이 문서에서 설명하는 접근 가능한 객체의 두 속성은 접근 가능한 이름접근 가능한 설명이다. 이름은 객체의 목적에 대한 정보를 제공하는 짧은 레이블이다. 메뉴 항목의 접근 가능한 이름의 예는 New이며, 이는 해당 메뉴 항목이 새 문서, 창 등의 생성을 제공함을 의미한다.

설명은 접근 가능한 객체의 성격을 더 명확히 하는 짧은 설명이다. 이름이 충분하다면 설명을 제공하는 것이 항상 필요한 것은 아니지만, 사용자가 객체의 사용을 더 잘 이해하는 데 도움이 될 수 있다.

접근성 API는 현재 접근 가능한 이름과 설명을 위해 평면적인, 구조화되지 않은 문자열을 지원한다. 따라서 이름/설명 계산의 결과는 평면 문자열이다.

"접근 가능한 이름"과 "접근 가능한 설명"이라는 용어는 이들이 접근 가능한 객체의 속성이며 접근성 API를 통해 노출된다는 점을 강조하기 위해 사용된다. 그러나 이후에는 단순히 "이름"과 "설명"이라고 자주 지칭한다.

2. 중요 용어

이 절은 비규범적이다.

일부 용어는 해당 위치에서 정의되지만, 다음 정의들은 이 문서 전체에서 사용된다.

보조 기술

다음을 수행하는 하드웨어 및/또는 소프트웨어:

  • 사용자 에이전트가 제공하는 서비스에 의존하여 웹 콘텐츠를 검색하고 렌더링한다
  • API 사용을 통해 사용자 에이전트 또는 웹 콘텐츠 자체와 함께 작동하며,
  • 장애가 있는 사람들의 웹 콘텐츠와의 사용자 상호작용을 용이하게 하기 위해 사용자 에이전트가 제공하는 것 이상의 서비스를 제공한다

이 정의는 다른 문서에서 사용되는 정의와 다를 수 있다.

이 문서의 맥락에서 중요한 보조 기술의 예는 다음과 같다:

  • 렌더링된 텍스트와 이미지의 시각적 가독성을 확대하고 개선하는 데 사용되는 화면 확대기;
  • 합성 음성 또는 새로고침 가능한 점자 디스플레이를 통해 정보를 전달하는 데 가장 자주 사용되는 화면 판독기;
  • 텍스트를 합성 음성으로 변환하는 데 사용되는 텍스트 음성 변환 소프트웨어;
  • 음성 제어와 받아쓰기를 가능하게 하는 데 사용되는 음성 인식 소프트웨어;
  • 키보드를 시뮬레이션하는 데 사용되는 대체 입력 기술(헤드 포인터, 화면 키보드, 단일 스위치, sip/puff 장치 포함);
  • 마우스 포인팅 및 클릭을 시뮬레이션하는 데 사용되는 대체 포인팅 장치.
접근 가능한 설명

접근 가능한 설명은 인터페이스 요소와 관련된 추가 정보를 제공하며, 접근 가능한 이름을 보완한다. 접근 가능한 설명은 시각적으로 인지 가능할 수도 있고 아닐 수도 있다.

접근 가능한 이름

접근 가능한 이름은 사용자 인터페이스 요소의 이름이다. 각 플랫폼 접근성 API는 접근 가능한 이름 속성을 제공한다. 접근 가능한 이름의 값은 사용자 인터페이스 요소의 보이는 속성(예: 버튼의 보이는 텍스트) 또는 보이지 않는 속성(예: 아이콘을 설명하는 텍스트 대체)에서 파생될 수 있다. 관련 접근 가능한 설명을 참고하라.

접근 가능한 이름 속성의 단순한 사용은 "OK" 버튼으로 설명할 수 있다. 텍스트 "OK"가 접근 가능한 이름이다. 버튼이 포커스를 받으면, 보조 기술은 플랫폼의 역할 설명을 접근 가능한 이름과 연결할 수 있다. 예를 들어 화면 판독기는 "push-button OK" 또는 "OK button"이라고 말할 수 있다. 연결 순서와 역할 설명의 세부 사항(예: "button", "push-button", "clickable button")은 플랫폼 접근성 API 또는 보조 기술에 의해 결정된다.

툴팁 속성

데스크톱 사용자 에이전트에서 마우스 호버에 대한 응답 등으로 사용자 에이전트가 툴팁을 생성하게 하는 모든 호스트 언어 속성.

3. 준수

비규범적으로 표시된 절뿐 아니라, 이 명세의 모든 작성 지침, 도표, 예제 및 참고 사항은 비규범적이다. 이 명세의 그 밖의 모든 내용은 규범적이다.

이 문서의 핵심 단어 MAY, MUST, 그리고 MUST NOTBCP 14 [RFC2119] [RFC8174]에 설명된 대로 해석해야 하며, 여기 표시된 것처럼 모두 대문자로 나타날 때에만 그렇게 해석해야 한다.

규범적 절은 구현이 이 명세에 준수하기 위해 작성자, 사용자 에이전트 및 보조 기술이 따라야 하는 요구사항을 제공한다.

비규범적(정보 제공) 절은 명세를 이해하는 데 유용한 정보를 제공한다. 이러한 절에는 권장 관행의 예가 포함될 수 있지만, 이 명세에 준수하기 위해 이러한 권장 사항을 따르는 것이 요구되지는 않는다.

4. 이름 및 설명

이름 및 설명 계산의 시작점은 DOM 요소이다. 출력은 평면적이고 구조화되지 않은 문자열이며, 이는 단일 단어만큼 단순할 수도 있고, 공백으로 구분된 토큰들의 문자열일 수도 있다. 예로는 SaveReload from disk가 있다.

중요한 요소는 요소의 역할이며, 이는 어떤 콘텐츠가 이름 문자열에 기여하는지를 결정한다. 역할은 세 가지 가능한 값을 갖는 nameFrom RDF 속성을 가진다:

author
이름은 aria-labelaria-labelledby 속성과 같은 명시적 마크업 기능이나, HTMLalt 또는 title 속성, 또는 SVGdesc 요소와 같은 호스트 언어 레이블링 메커니즘에서 작성자가 제공한 값으로부터 생성된다.
contents
이름은 텍스트 노드에서 생성되며, 이는 요소와 연결되어 있다. 일부 역할에서는 이것이 "author"와 함께 허용될 수도 있지만, 더 높은 우선순위의 "author" 기능이 제공되지 않은 경우에만 "content"가 사용된다. 우선순위는 텍스트 동등물 계산 알고리즘에 의해 정의된다.
prohibited
요소에는 이름이 없다. 작성자는 요소에 이름을 부여하기 위해 aria-label 또는 aria-labelledby 속성을 사용해서는 MUST NOT 안 된다.

Accessible Rich Internet Applications (WAI-ARIA) 1.2 [WAI-ARIA] 명세는 작성자로부터 이름을 지원하는 역할, 콘텐츠로부터 이름을 지원하는 역할이름을 가질 수 없는 역할의 목록을 제공한다.

4.1 이름 계산

사용자 에이전트접근 가능한 이름을 아래에 개요로 제시된 규칙을 사용하여 텍스트 동등물 계산이라는 제목의 절에서 계산해야 MUST 한다.

4.2 설명 계산

다음 표는 접근 가능한 설명을 계산하기 위해 적용될 수 있는 마크업의 우선순위를 제공한다. 사용자 에이전트는 마지막 열에 설명된 대로, 나열된 조건이 충족되는 표의 첫 번째 적용 가능한 항목을 사용해야 MUST 한다. 사용자 에이전트는 그 마크업이 빈 설명을 초래하더라도, 처음 발견된 관련 마크업 이외의 어떠한 마크업도 사용해서는 MUST NOT 안 된다:

우선순위 속성 적용 조건 설명 계산에 사용되는 방식
1 aria-describedby 속성 모든 요소에 사용 요소에서 aria-describedby가 참조하는 모든 노드에 대해 이름 계산을 수행하고, 이를 연결하며, 공백 문자로 구분한다
2 aria-description 속성 모든 요소에 사용 평면 문자열로 사용
3 설명 계산에 참여하는 호스트 언어 기능 고유한 호스트 언어 기능은 적용 가능한 요소의 접근 가능한 이름에 이미 사용되지 않은 경우에만, 해당 요소의 설명 계산에 참여할 수 MAY 있다. 이 조건을 충족하는 HTML 요소에 대해서는 HTML AAM: 접근 가능한 설명 계산을 참조하라. 호스트 언어 요소의 텍스트 동등물 계산 또는 호스트 언어 속성의 문자열 값 중 하나.
4 호스트 언어 툴팁 속성 또는 동등한 기능(예: HTML title 속성)
  • 모든 요소
  • 이 노드의 접근 가능한 이름에 이미 사용되지 않은 경우에만 사용
평면 문자열로 사용

4.3 텍스트 동등물 계산

텍스트 동등물 계산은 접근 가능한 이름접근 가능한 설명 모두에서 사용된다. 여러 종류의 요소, 노드, 그리고 마크업 조합에 대해 서로 다른 규칙이 제공된다. 텍스트 대안은 적절한 경우 요소 안에 포함된 모든 관련 콘텐츠로부터 구축된다. 이는 2B 단계와 2F 단계를 통해 이루어지며, 이 단계들은 재귀적이고 전체 규칙 집합을 사용하여 자신의 자식이나 자신이 참조하는 노드에서 텍스트를 가져온다.

계산의 목적은 대체 표현을 위한 인지 가능한 레이블 또는 설명을 공백으로 구분된 텍스트 토큰들의 평면 문자열 형식으로 생성하는 것이다.

4.3.1 용어

루트 노드
텍스트 대안을 구하려는 DOM 노드 또는 요소.
현재 노드
root node의 텍스트 동등물을 계산하기 위해 현재 순회 중인 DOM 노드. 처음에는 current noderoot node이지만, 이후 단계에서는 root node의 어떤 자손이거나 다른 참조된 노드이다.
렌더링된 자식 노드
주어진 노드의 자식 노드로 렌더링되는 노드로서, 섀도 루트슬롯을 고려한 것이다.
평면 문자열
모든 캐리지 리턴, 줄바꿈, 탭, 폼 피드가 단일 공백으로 대체되고, 여러 공백이 단일 공백으로 축약된 문자들의 문자열. 이 문자열에는 문자 데이터만 포함되며, 어떠한 마크업도 포함되지 않는다.
총 누적 텍스트
current node를 포함하지 않고, 그 직전까지 계산된 텍스트 동등물.
누적 텍스트
아래에 설명된 단계 또는 단계들의 시퀀스에서 누적된 텍스트. 이는 해당 단계들을 위한 임시 저장소이다.
결과
아래에 설명된 단계 중 하나에서 계산된 텍스트 동등물.
공백 없이 결과를 X에 추가한다
  • X가 비어 있으면, result를 X에 복사한다.
  • X가 비어 있지 않으면, result를 X의 끝에 복사한다.
공백과 함께 결과를 X에 추가한다
  • X가 비어 있으면, result를 X에 복사한다.
  • X가 비어 있지 않으면, X의 끝에 공백을 추가한 다음 그 공백 뒤에 result를 X에 복사한다.
공백 없이 결과를 X 앞에 추가한다
  • X가 비어 있으면, result를 X에 복사한다.
  • X가 비어 있지 않으면, result를 X의 시작 부분에 복사한다.
공백과 함께 결과를 X 앞에 추가한다
  • X가 비어 있으면, result를 X에 복사한다.
  • X가 비어 있지 않으면, result를 X의 시작 부분에 복사하고, 그 복사본 뒤에 공백을 추가한다.

4.3.2 계산 단계

주어진 요소의 텍스트 대안은 다음과 같이 계산된다:

  1. 초기화: root node를 주어진 요소로 설정하고, current noderoot node로 설정하며, total accumulated text를 빈 문자열("")로 설정한다. root node의 역할이 이름 지정을 금지하는 경우, 빈 문자열("")을 반환한다.
  2. 계산: current node의 텍스트 대안을 계산한다:
    1. 참조되지 않은 숨김: current node숨겨진 상태이고 다음에 해당하는 경우:
      1. aria-labelledby 또는 aria-describedby 순회의 일부가 아니며, 해당 관계가 직접 참조한 노드가 숨겨져 있었던 경우.
      2. 또한 네이티브 호스트 언어 텍스트 대안 요소(예: HTMLlabel) 또는 속성 순회의 일부도 아니며, 그 순회의 루트가 숨겨져 있었던 경우.
      빈 문자열을 반환한다.
      참고

      접근 가능한 이름 계산의 목적상 숨김에 대한 넓은 정의를 명확히 하는 것이 중요하다:

      1. CSS 속성 display:none, visibility:hidden, visibility:collapse 또는 content-visibility:hidden을 가진 노드: 이들은 "인지 불가능" 및 "명시적으로 숨김" 지침과 일치하므로 숨겨진 것으로 간주된다.
      2. CSS 속성 opacity:0 또는 filter:opacity(0%), 또는 이와 유사한 SVG 메커니즘을 가진 노드: 이들은 숨겨진 것으로 간주되지 않는다. 이러한 방법으로 숨겨진 텍스트는 여전히 선택하거나 복사할 수 있으며, 사용자 에이전트도 이를 자신의 접근성 트리에 계속 노출한다.
      3. aria-hidden="true" 속성을 가진 노드: 이는 "명시적으로 숨김" 지침과 일치하므로 숨겨진 것으로 간주된다.
      4. 화면 밖이나 다른 객체 뒤에 숨겨진 노드: 이들은 숨겨진 것으로 간주되지 않는다. 이들은 접근성 트리에 노출되며, 심지어 화면상의 객체에 이름을 부여할 수도 있다.
      참고

      기본적으로 보조 기술은 숨겨진 정보를 전달하지 않지만, 작성자는 이를 명시적으로 재정의하여 aria-labelledby 또는 aria-describedby를 사용함으로써 숨겨진 텍스트를 접근 가능한 이름 또는 접근 가능한 설명의 일부로 포함할 수 있다.

    2. LabelledBy: 그렇지 않고, current node가 적어도 하나의 유효한 IDREF를 포함하는 aria-labelledby 속성을 가지며, current node가 이미 진행 중인 aria-labelledby 또는 aria-describedby 순회의 일부가 아닌 경우, IDREF를 나타나는 순서대로 처리한다:
      1. accumulated text를 빈 문자열로 설정한다.
      2. 각 IDREF에 대해:
        1. current node를 IDREF가 참조하는 노드로 설정한다.
        2. LabelledBy 순회: 전체 계산 단계부터 시작하여 current node의 텍스트 대안을 계산한다. result를 그 텍스트 대안으로 설정한다.
        3. 공백 문자와 resultaccumulated text에 추가한다.
      3. accumulated text가 빈 문자열("")이 아니면 이를 반환한다.

      참조되지 않은 숨김과 결합된 LabelledBy 순회의 결과는, aria-labelledby 또는 aria-describedby가 참조하는 노드가 숨겨져 있는 경우 사용자 에이전트가 하위 트리의 모든 노드를 접근 가능한 이름 또는 접근 가능한 설명의 일부로 포함해야 MUST 함을 의미한다.

    3. 임베디드 컨트롤: 그렇지 않고, current node가 다른 위젯의 레이블 (예: aria-labelledby가 직접 참조하는 모든 요소) 안에 임베드된 컨트롤이며, 사용자가 해당 임베디드 컨트롤의 값을 조정할 수 있는 경우, 다음 방식으로 임베디드 컨트롤을 텍스트 대안의 일부로 반환한다:
      1. Textbox: 임베디드 컨트롤이 textbox 역할을 가지면, 그 값을 반환한다.
      2. Combobox/Listbox: 임베디드 컨트롤이 combobox 또는 listbox 역할을 가지면, 선택된 option의 텍스트 대안을 반환한다.
      3. Range: 임베디드 컨트롤이 range 역할을 가지면(예: spinbutton 또는 slider):
        1. aria-valuetext 속성이 존재하면, 그 값을 반환한다.
        2. 그렇지 않고 aria-valuenow 속성이 존재하면, 그 값을 반환한다.
        3. 그렇지 않으면 호스트 언어 속성이 지정한 값을 사용한다.
    4. AriaLabel: 그렇지 않고, current nodeslot 요소가 아니며, 정의되지 않았거나 빈 문자열이 아니고, 공백을 제거했을 때도 빈 문자열이 아닌 값을 가진 aria-label 속성을 가지는 경우:
      1. current node의 순회가 콘텐츠로부터 이름을 얻는 자손 노드 재귀 때문이고 그리고 current node가 임베디드 컨트롤이면, aria-label을 무시하고 임베디드 컨트롤 규칙으로 건너뛴다.
      2. 그렇지 않으면, aria-label의 값을 반환한다.
    5. 호스트 언어 레이블: 그렇지 않고, current node의 네이티브 마크업이 텍스트 대안을 정의하는 속성(예: alt) 또는 요소(예: HTML label 또는 SVG title)를 제공하는 경우, 호스트 언어가 정의한 대로(예: HTML-AAM) 그 대안을 flat string 형식으로 반환한다. 단, current node가 표현적(role="presentation" 또는 role="none", alt="")으로 노출되는 경우는 제외한다.
      참고
      중요! 네이티브 HTML 요소의 접근 가능한 이름은 호스트 언어에 따라 다르게 계산될 수 있다. 자세한 내용은 HTML-AAM을 검토해야 한다.
      참고

      예를 들어, HTML에서 img 요소의 alt 속성은 텍스트 대안 문자열을 정의하고, label 요소는 참조된 폼 요소에 대한 텍스트를 제공한다. SVG2에서 desctitle 요소는 부모 요소에 대한 설명을 제공한다.

    6. 콘텐츠로부터 이름: 그렇지 않고, current node's 역할콘텐츠로부터 이름을 허용하거나, current nodearia-labelledby, aria-describedby에 의해 참조되거나, 네이티브 호스트 언어 텍스트 대안 요소(예: HTMLlabel)이거나, 네이티브 호스트 언어 텍스트 대안 요소의 자손인 경우:
      1. 콘텐츠로부터 이름 재설정: accumulated text를 빈 문자열로 설정한다.
      2. 생성된 콘텐츠로부터 이름: current node와 연결된 CSS 생성 텍스트 콘텐츠를 확인하고 이를 accumulated text에 포함한다. CSS ::before::after 의사 요소 [CSS2]는 콘텐츠 모델을 가진 요소에 대해 ::marker 의사 요소와 더불어 텍스트 콘텐츠를 제공할 수 있다.
        1. ::marker 의사 요소의 경우, current node::marker를 지원하면 사용자 에이전트CSS 텍스트 콘텐츠를 공백 없이 current node의 텍스트 콘텐츠 앞에 추가해야 MUST 한다.
        2. ::before 의사 요소의 경우, 사용자 에이전트CSS 텍스트 콘텐츠를 공백 없이 current node의 텍스트 콘텐츠 앞에 추가해야 MUST 한다.
        3. ::after 의사 요소의 경우, 사용자 에이전트CSS 텍스트 콘텐츠를 공백 없이 current node의 텍스트 콘텐츠 뒤에 추가해야 MUST 한다.
      3. 자식 노드 결정: current noderendered child nodes를 결정한다:
        1. current node에 연결된 섀도 루트가 있으면, rendered child nodes섀도 루트의 자식 노드로 설정한다.
        2. 그렇지 않고, current nodeslot이고 할당된 노드를 가지면, rendered child nodescurrent node할당된 노드로 설정한다.
        3. 그렇지 않으면, rendered child nodescurrent node의 자식 노드로 설정한다.
      4. 각 자식으로부터 이름: current node의 각 rendered child node에 대해:
        1. current noderendered child node로 설정한다.
        2. 전체 계산 단계부터 시작하여 current node의 텍스트 대안을 계산한다. result를 그 텍스트 대안으로 설정한다.
        3. resultaccumulated text에 추가한다.
      5. accumulated text가 빈 문자열("")이 아니면 이를 반환한다.

      중요: 하위 트리의 각 노드는 한 번만 참조된다. 자손에서 텍스트가 수집되었지만, 어떤 자손 노드의 다른 IDREF에 의해 참조되는 경우, 그 두 번째 또는 그 이후의 참조는 따라가지 않는다. 이는 무한 루프를 피하기 위해 수행된다.

      참고

      이 단계는 자식 노드 자체에도 적용될 수 있으며, 이는 계산이 재귀적이고 current node의 하위 트리에 있는 모든 요소로부터 텍스트를 수집한 결과가 됨을 의미한다. 그 깊이에 관계없이 그렇다. 그러나 어떤 주어진 자손 노드의 텍스트 대안은 위의 B부터 D 단계에서 설명된 더 높은 우선순위의 마크업에서 비롯될 수 있으며, 여기서 "Namefrom: author" 속성은 전체 하위 트리에 대한 텍스트 대안을 제공한다.

      참고

      2024년 1월 18일: ARIA Working Group은 current node와 그 인접 노드 및 의사 요소의 CSS display 값에 따라 텍스트 문자열을 공백이 있거나 없는 방식으로 결합하는 가능성을 검토하고 있다. 진행 중인 논의는 AccName #225에 있다.

    7. 텍스트 노드: 그렇지 않고, current node텍스트 노드이면, 그 텍스트 내용을 반환한다.
    8. 재귀적 콘텐츠로부터 이름: 그렇지 않고, current node접근 가능한 이름 또는 접근 가능한 설명이 계산 중인 요소의 자손이고, 자손을 포함하는 경우, 콘텐츠로부터 이름 재설정으로 진행한다.
    9. 툴팁: 그렇지 않고, current node툴팁 속성을 가지면, 그 값을 반환한다.
      참고

      툴팁 속성은 하위 트리 콘텐츠를 포함하여 그 밖의 아무것도 결과를 제공하지 않은 경우에만 사용된다.

    10. 위의 각 단계의 result와 공백 문자를 total accumulated text에 추가한다.
  3. 모든 단계가 완료된 후, total accumulated text는 계산을 시작한 요소접근 가능한 이름 또는 접근 가능한 설명으로 사용된다.

5. 접근 가능한 이름 및 설명 매핑

labelled-by/label-for 및 described-by/description-for와 같은 관계를 포함하여, 이름 및 설명 접근성 API 매핑에 관한 정보는 Core Accessibility API Mappings 명세 [CORE-AAM-1.2]에 문서화되어 있다. aria-label, aria-labelledby, 그리고 aria-describedby에 대한 매핑 표 항목을 참조하라.

6. 부록

6.1 변경 로그

6.1.1 마지막 공개 작업 초안 이후의 실질적 변경 사항

6.1.2 Accessible Name and Description Computation 1.1 권고안 이후의 실질적 변경 사항

  • 2019년 6월 27일: 루트 노드에서 이름 지정이 금지될 가능성을 허용하는 문장 추가. 참고: 이 변경 자체는 구현에 영향을 주지 않지만, 다른 명세가 최상위 요소에 대해 선택적으로 이름 지정을 금지할 수 있게 한다. 또한, 이 금지가 명세 내에서 이루어지더라도, 그 금지는 콘텐츠로부터 이름을 계산하는 데 아무런 영향을 주지 않는다.

6.2 감사의 말

이 절은 비규범적이다.

다음 사람들은 이 문서의 개발에 기여했다.

6.2.1 발행 시점의 ARIA WG 참여자

  • Rahim Abdi (Apple Inc.)
  • NAVYA AGARWAL (Adobe)
  • Joey Arhar (Google LLC)
  • Benjamin Beaudry (Microsoft Corporation)
  • Curt Bellew (Oracle Corporation)
  • Zoë Bijl (W3C 초대 전문가)
  • Gautier Chomel (EDRLab)
  • Aleksandar Cindrikj (Netcetera)
  • Keith Cirkel (Mozilla Foundation)
  • Daniel Clark (Microsoft Corporation)
  • Sydney Coleman (Google LLC)
  • James Craig (Apple Inc.)
  • Chris Cuellar (Bocoup)
  • Diego Della Rossa (UsableNet)
  • Joanmarie Diggs (Igalia)
  • Tamsin Ewing (W3C)
  • Mayuri Faldu (Navy Federal Credit Union)
  • Betsy Fanning (PDF Association)
  • Steve Faulkner (TetraLogical Services Ltd)
  • Patrick Foster (axes4 GmbH)
  • Jane Fulton (Cisco)
  • Bryan Garaventa (W3C 초대 전문가)
  • Matt Garrish (DAISY Consortium)
  • Doug Geoffray (Microsoft Corporation)
  • Ariella Gilmore (IBM Corporation)
  • Taylore Givens (Microsoft Corporation)
  • David Grogan (Google LLC)
  • Shirisha Gubba (Google LLC)
  • Jon Gunderson (University of Illinois)
  • Oliver Habersetzer (SAP SE)
  • Sunny Hardasani (Adobe)
  • Matthew Hardy (Adobe)
  • Chris Harrelson (Google LLC)
  • Sarah Higley (Microsoft Corporation)
  • Hans Hillen (TPGi)
  • Isabel Holdsworth (TPGi)
  • Stanley Hon (Microsoft Corporation)
  • Michael Jackson (Microsoft Corporation)
  • Jilin Jiang (Ant Group Co., Ltd.)
  • Duff Johnson (PDF Association)
  • Summer Jones (Thomson Reuters Corp.)
  • Yuki Kamahori (Cybozu)
  • William Kilian (Kilian Codes LLC)
  • Matthew King (Meta)
  • Zachary Kinsey (TargetStream Technologies)
  • Daisuke Kobayashi (Cybozu)
  • Peter Krautzberger (krautzource UG)
  • Nina Krauß (SAP SE)
  • JaEun Jemma Ku (University of Illinois)
  • Joe Lamyman (TetraLogical Services Ltd)
  • Christopher Land (Oracle Corporation)
  • Charles LaPierre (Benetech)
  • Patrick Lauke (TetraLogical Services Ltd)
  • Philip Lazarevic (Level Access)
  • Leo Lee (Microsoft Corporation)
  • Brett Lewis (TPGi)
  • Alison Maher (Microsoft Corporation)
  • Gurpreet Kaur Mangera (Rakuten Group, Inc.)
  • Mark McCarthy (University of Illinois)
  • Eduardo Meza Etienne (Navy Federal Credit Union)
  • Clay Miller (Microsoft Corporation)
  • Hirotaka Minamida (Cybozu)
  • Daniel Montalvo (W3C)
  • Baldino Morelli (UsableNet)
  • Jacques Newman (Microsoft Corporation)
  • James Nurthen (Evinced Inc.)
  • Scott O'Hara (Microsoft Corporation)
  • Lola Odelola (W3C 초대 전문가)
  • Neil Osman (Evinced Inc.)
  • Yusuke Oyama (Cybozu)
  • Adam Page (Hilton)
  • Michael Pennisi (Bocoup)
  • Giacomo Petri (UsableNet)
  • Noah Praskins (TPGi)
  • Lucas Radaelli (Google LLC)
  • Paul Rayius (PDFix-US)
  • Mark Rogers (Powermapper Software)
  • Priti Rohra (BarrierBreak Solutions Private Limited)
  • Adrian Roselli (W3C 초대 전문가)
  • Marco Sabidussi (UsableNet)
  • Trisha Salas (Level Access)
  • Stefan Schnabel (SAP SE)
  • Harris Schneiderman (Deque Systems, Inc.)
  • Raymond Schwartz (Navy Federal Credit Union)
  • Davis Shaver (The Washington Post)
  • Cynthia Shelly (W3C 초대 전문가)
  • Tzviya Siegman (W3C)
  • Avneesh Singh (DAISY Consortium)
  • Michael[tm] Smith (sideshowbarker) (W3C)
  • Francis Storr (Intel Corporation)
  • Nobukiyo Sugisaki (Cybozu)
  • Melanie Sumner (IBM Corporation)
  • Alexander Surkov (Igalia)
  • James Teh (Mozilla Foundation)
  • Roman Toda (Foxit software)
  • David Tseng (Google LLC)
  • Cybozu W3C (Cybozu)
  • Jan Williams (TPGi)
  • Peter Wyatt (PDF Association)
  • Valerie Young (Igalia)

6.2.2 지원 기금 제공자

이 출판물은 미국 교육부, National Institute on Disability, Independent Living, and Rehabilitation Research (NIDILRR)의 미국 연방 기금으로 일부 지원되었으며, 처음에는 계약 번호 ED-OSE-10-C-0067에 따라, 그다음에는 계약 번호 HHSP23301500054C에 따라, 그리고 현재는 HHS75P00120P00168에 따라 지원되었다. 이 출판물의 내용은 반드시 미국 교육부의 견해나 정책을 반영하는 것은 아니며, 상표명, 상업적 제품 또는 조직에 대한 언급이 미국 정부의 보증을 의미하지도 않는다.

A. 참고문헌

A.1 규범적 참고문헌

[CORE-AAM-1.2]
Core Accessibility API Mappings 1.2. Valerie Young; Cynthia Shelly. W3C. 2026년 4월 24일. CRD. URL: https://www.w3.org/TR/core-aam-1.2/
[CSS2]
Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification. Bert Bos; Tantek Çelik; Ian Hickson; Håkon Wium Lie. W3C. 2011년 6월 7일. W3C 권고안. URL: https://www.w3.org/TR/CSS2/
[DOM]
DOM Standard. Anne van Kesteren. WHATWG. Living Standard. URL: https://dom.spec.whatwg.org/
[html-aam-1.0]
HTML Accessibility API Mappings 1.0. Scott O'Hara; Rahim Abdi. W3C. 2026년 4월 24일. W3C 작업 초안. URL: https://www.w3.org/TR/html-aam-1.0/
[infra]
Infra Standard. Anne van Kesteren; Domenic Denicola. WHATWG. Living Standard. URL: https://infra.spec.whatwg.org/
[RFC2119]
RFC에서 요구 수준을 나타내기 위해 사용하는 핵심 단어. S. Bradner. IETF. 1997년 3월. Best Current Practice. URL: https://www.rfc-editor.org/rfc/rfc2119
[RFC8174]
RFC 2119 핵심 단어에서 대문자와 소문자의 모호성. B. Leiba. IETF. 2017년 5월. Best Current Practice. URL: https://www.rfc-editor.org/rfc/rfc8174
[WAI-ARIA]
Accessible Rich Internet Applications (WAI-ARIA) 1.1. Joanmarie Diggs; Shane McCarron; Michael Cooper; Richard Schwerdtfeger; James Craig. W3C. 2017년 12월 14일. W3C 권고안. URL: https://www.w3.org/TR/wai-aria-1.1/

A.2 참고 정보 참고문헌

[ACCNAME-1.1]
Accessible Name and Description Computation 1.1. Joanmarie Diggs; Bryan Garaventa; Michael Cooper. W3C. 2018년 12월 18일. W3C 권고안. URL: https://www.w3.org/TR/accname-1.1/
[wai-aria-1.2]
Accessible Rich Internet Applications (WAI-ARIA) 1.2. Joanmarie Diggs; James Nurthen; Michael Cooper; Carolyn MacLeod. W3C. 2023년 6월 6일. W3C 권고안. URL: https://www.w3.org/TR/wai-aria-1.2/