SCC

SCC is the compiler used for SC. SC is a small language intended to make the creation of OVAL content easier. The SC language is more "human readable" than the XML of OVAL. The main features of SC are:

  • Compact, readable syntax: The XML-based syntax of OVAL is verbose and filled with line noise, making it hard to write and hard to read. SC has a syntax that is easier on the fingers and the eyes.
  • Sane ID and reference handling: OVAL requires the creation of barely human-readable IDs for each element (e.g., oval:tresys:obj:2007) and the widespread use of these IDs to reference elements. SC will allow the use of human-readable names within the source and allow the omission of names altogether when they are not necessary. SCC will provide a stable translation of the SC named objects and nameless, in-line objects into XML objects with OVAL compliant IDs.
  • Locality of definition: OVAL requires that related elements, such as objects, states, and tests, be widely spaced and referenced using OVAL IDs. SC allows elements that are only used once to be defined in-line and relaxes the rules on element grouping. By giving the content author greater control over organization SC allows them to develop a more maintainable body of content.
  • Simple OVAL mapping: SC provides a simpler syntax while maintaining a clear mapping to the actual OVAL language. A content author can clearly understand how the SC language will be rendered into OVAL. This also makes it simple for the content author to translate the OVAL documentation into corresponding SC syntax.