Get me on Github

fmCheckMate-XSLT Library

fmCheckMate-XSLT Library

Transforms your FileMaker work

The fmCheckMate-XSLT is a library of functions that plug into fmCheckMate via the [T] Transform button.

Installation

  1. Download the latest release from GitHub and install it:
    • unpack it
    • rename it to just fmCheckMate
    • put the fmCheckMate-XSLT library in your Documents folder, where it lives
    • ~/Documents/fmCheckmate
        mv ~/Downloads/fmCheckMate-XSLT* ~/Documents/fmCheckMate
      
  2. In fmCheckMate to open the XSLT Chooser window
    • press T (T is for Transform), or
    • navigate to the XML Editor (3) and press the [T] button.
  3. To load / reload the XSLT library press the [Reimport] button or press 8.

[T] is for Transform

Once you have converted your FileMaker things to XML, click the [T] button or press T to open the XSLT Chooser dialog:

T Button

The XSLT Chooser Window

If the XSLT files are not yet loaded, click the [Reimport] Button or press 8 to reimport the files.

The XSLT Chooser has two views

  • Guided View
  • List View

Press the [View] button to switch between the two.

Guided View

Use the [View] button if necessary to change to the Guided View.

In Guided View you are presented with the three categories of XSLT function

XSLT Chooser Guided View 1

Each entry shows how many xslt transformations it contains. Clicking an entry selects the contents of that entry, and so you work your way down the tree and words of the file name…

category > input type > output type > First word > Second word > …

Choose input type:

XSLT Chooser Guided View 2

Choose output type:

XSLT Chooser Guided View 3

Where there is only one file left in a category you see the file icon and can choose it, otherwise you continue to distinguish between the names of the different functions.

List View

Use the [View] button if necessary to change to the List View.

XSLT Chooser List View

fmCheckMate-XSLT library structure

The fmCheckMate-XSLT library structures its functions by

Three Categories of XSLT Functions

fmCheckMate distinguishes three categories of transformation, depending on the input and output type:

An Analysis
analyses the things and produces a text output (output type = text), for example the XSLT function to list the names of the copied custom functions is an analysis
A Change
changes the things without changing the type (output type = input type) for example the XSLT function to replace a Replace Field Contents Step with a Set Field Loop is a Change
A Transformation
transforms the things into a different type (output type ≠ input type) for example the XSLT function to convert layout buttons to script steps is a Transformation

Type of Input

The XSLT functions of the fmCheckMate-XSLT library are stored in the xslsubfolder.

There the functions are grouped into a folder based on the type of input that they take:

fmCheckMate
    xsl
        FMObjectTransfer - the XML format for custom menus
        FMPXMLRESULT - the XML export data format
        FMSaveAsXML - the XML from the Save a Copy as XML step
        fmxmlsnippet - the FileMaker clipboard XML
        FPSL - the XML format of a snapshot file
        xml - any xml
        xsl - an XSLT stylesheet
        _inc - a folder of building blocks include in XSLT functions

Type of Output

Analyse Text
Analysis which outputs text
Analyse Text/Lines
Analysis which outputs text lines
Analyse Text/Tab
Analysis which outputs tab delimited text (displayed as an HTML table)
Analyse Text/HTML
Analysis which outputs HTML text
Statistics
Analysis which outputs a text chart
Analyse Text/SVG
Analysis which outputs a text/svg image
Analyse Text/Tiny Graph Format
Analysis which outputs tiny graph format (displayed in external tool)
Change
Change which outputs the same type of things
alternative Change
Performs an alternative Change on FileMaker objects
Folder
??? To do
Transform
Transforms the input thing to a different kind of output thing - quite magical 🦄

The Structure of XSLT Filenames

The filenames of XSLT functions in the fmCheckMate XSLT library are structured like this

«input-type»_«output-type»_«NameOfTheFunctionInUpperCamelCase».xsl

When the files are imported this is parsed into the three columns

  • Input type
  • Output type
  • Name of the Function

Made with ❤️ by MrWatson-de