Here is a taste of one of my dogfooding test cases for Mite:

Up:
    CreateTable @Document:
        Int32 @Id, { @primary : true, @identity : true }
        Guid @Uid, { @rowguid : true }
        String @Name, { @length : 55 }
        String @Description, { @length : 100 }
   
    CreateTable @CatalogNode:
        Int32 @Id, { @primary : true, @identity : true }
        Guid @Uid, { @rowguid : true }
        String @Name, { @length : 55 }
        String @Description, { @length : 100 }
        ForeignKey @Document, { @nullable : true }

Down:
    DropTable @CatalogNode
    DropTable @Document

Look at the pretty sigils.