User Tools

Site Tools


design:finalizer

This is an old revision of the document!


List of things that a v3 finalizer will need to do

  • Process all <x:include> elements. Note: <x:include>d XML may include more <x:include>s (with relative URLs rooted at the xml:base), set a limit on the depth of recursion.
  • Remove comments
  • Replace or remove all deprecated features to the greatest extent possible. Generate warnings or errors as needed.
    • Scan again for elements that are deprecated; if any are found, generate an error
    • Scan again for attributes that are deprecated; if any are found, generate an error
  • Fill in document date and expires date, if applicable
  • Remove current boilerplate text
    • After removing, fill in boilerplate text with current values
  • Fill in any default values for attributes on elements, except t/@keepWith* and section/@toc
  • If the <workgroup> item doesn't end with Group, add (Working|Research) Group to the end
  • Add slugifiedName to each <name> that does not contain a valid one (generating only valid HTML id's starting with n-)
  • Remove any existing pn attributes
  • Add pn attributes for all parts. Parts are:
    • section: pn='s-1.4.2'
      • except <abstract>, which gets pn='s-abstract'
      • except <note>, which gets pn='s-note-[counter]'
    • table: pn='t-3'
    • figure: pn='f-4'
    • (abstract, note, t, aside, blockquote, li, dt, artwork, sourcecode, references): pn='p-[section]-[counter]'
  • Resolve all <xref> elements
    • Ensure the target is valid
    • Invent text for each element that doesn't have it
  • Process <artwork>
    • if type='svg'
      • If src attribute, inline and remove src, insert xml:base
      • Check SVG schema against our TinySVG profile
    • else if src != data:, turn into data:, insert xml:base
  • Pretty-format the XML output. Note: Dentin now does an adequate job.
    • This step might be controversial
  • Do a final scan to ensure full compliance to v3 schema
design/finalizer.1430154119.txt.gz · Last modified: 2015/04/27 10:01 by jhildebr