Rigi RSF

Program-Transformation.Org: The Program Transformation Wiki
Specification: RigiRSFSpecification

Errata: In a source-location the elements are separated with comma, not semicolon.

Errata for "Appendix: Tool Support": rigiedit can also read Stuctured RSF.

The specification discussed the following RSF formats:

  • (3-tuple) Unstructured RSF
  • Partly structured RSF
  • Stuctured RSF
  • 4-tuple unstructured RSF

You have to be careful about the format transformation that the tools perform. If you run htmlrsf and sortrsf without command line args, they change 4-tuple unstructured RSF to (3-tuple) unstructured RSF!

See also RigiUserManual, Section 4.7.1.

See also http://calla.ics.uci.edu/reveng/toolbase/moin.cgi/RSF.

Typically an RSF file adheres to a certain schema. For example, an RSF file generated with cparse will adhere to the cparse schema.

The schema is documented in 3 files:

  • Riginode: The node types
  • Rigiarc: The arc types
  • Rigiattr: The node and arc attributes

rigiedit expects a directory with the name of the domain containing these files at $RIGI/Rigi/domain.

See RigiUserManual, Section 4.4.

(There is a bit more information in Scott Tilleys Ph.D. Thesis "Domain-Retargetable Reverse Engineering", Section A.2.3, page 126f.)

RSF Generators