Skip to content

Create more machine readable source of truth for mapping tables - use for tests also #258

Open

Description

@spectranaut

What if we had a more machine readable source of truth for the mapping tables, which the tables were generated from, and also the AAM tests?

Then we edit the "source of truth" instead of the HTML tables.

Activity

  1. spectranaut commented on Mar 3, 2026

    @spectranaut
    ContributorAuthor

    The more I think about this, the more I think it won't be easy to automate the writing of tests from the content in the Core-AAM tables alone. For example, for each table, for the tests you would also need to provide the html markup to test. Also there is a fair amount of prose in the Core-AAM tables, and maybe you could try to write that a bit more programmatically... but I'm not altogether sure this is worth the effort. In a way, it's more like the table can be generated from the tests than the other way around, and there will still be (probably) some untestable statements, or "authors SHOULD" statements.

    The AAM tables are not modified often, when they are modified, it won't be a lot of work to update the tests. So maybe automating the updating of the tests is not worth the effort need to create the right abstraction. According to the helpful xkcd chart I can spend 1-2 days if in the future it saves 30mins to 1 hour of work writing tests a month.

  2. scottaohara commented on Mar 5, 2026

    @scottaohara
    Member

    though maybe not the intention of this issue, there is some overlap to this idea that would help with w3c/html-aam#122

    the challenge also being that some tables aren't 1:1 with core aam, as there might be additional mapping details or comments for an HTML element.

  3. pkra commented on Mar 11, 2026

    @pkra
    Member
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions