[Demonstration 1]

[Buggy Method]
private void writeHierarchyInfo(SaxWriter writer, List<Hierarchy> hierarchies, List<Property> props) {
    writer.startSequence(null, "HierarchyInfo");
    for (Hierarchy hierarchy : hierarchies) {
        writer.startElement("HierarchyInfo", "name", hierarchy.getName());
        for (final Property prop : props) {
            if (prop instanceof IMondrianOlap4jProperty) {
                writeProperty(writer, hierarchy, prop);
            } else {
                writeElement(writer, hierarchy, prop);
            }
        }
        writer.endElement();
    }
    // "HierarchyInfo"
    writer.endSequence();
}

[Buggy Hunk]
"HierarchyInfo", "name", hierarchy.getName());

[Patch]
"HierarchyInfo", "name", getHierarchyName(hierarchy));

[Demonstration 2]

[Buggy Method]
@Test
public void testKeywords() {
    assertEquals(Keyword.class, Reader.read(":foo").getClass());
}

[Buggy Hunk]
assertEquals(Keyword.class,Reader.read(":foo").getClass());

[Patch]
assertEquals(Keyword.class,Reader.read(":foo").getValue().getClass());

[Demonstration 3]

[Buggy Method]
private String parseCaption(JsonNode caption) throws RestParseException {
    assert caption != null;
    return getAttribute(caption, "text").asText();
}

[Buggy Hunk]
return getAttribute(caption, "text").asText();

[Patch]
return caption.has("text") ? caption.get("text").asText() : "";