### Question:
LanePropertyWriter extends BasePropertyWriter { public void setName(String value) { lane.setName(SafeHtmlUtils.htmlEscape(value.trim())); CustomElement.name.of(lane).set(value); } LanePropertyWriter(Lane lane, VariableScope variableScope); void setName(String value); @Override Lane getElement(); @Override void addChild(BasePropertyWriter child);  }### Answer:
@Test public void JBPM_7523_shouldPreserveNameChars() { Lane lane = bpmn2.createLane(); PropertyWriterFactory writerFactory = new PropertyWriterFactory(); LanePropertyWriter w = writerFactory.of(lane); String aWeirdName = " XXX !!@@ <><> "; String aWeirdDoc = " XXX !!@@ <><> Docs "; w.setName(aWeirdName); w.setDocumentation(aWeirdDoc); assertThat(lane.getName()).isEqualTo(StringEscapeUtils.escapeXml10(aWeirdName.trim())); assertThat(CustomElement.name.of(lane).get()).isEqualTo(asCData(aWeirdName)); assertThat(DocumentationTextHandler.of(lane.getDocumentation().get(0)).getText()).isEqualTo(asCData(aWeirdDoc)); }