Создание пользовательской jsonSchema из JAXB, сгенерированной классами Java с помощью Jackson

#java #jackson #jaxb #jsonschema #xml-attribute

Вопрос:

У меня есть JAXB, сгенерированные Java-классы, подобные этому

 public class MyEntity {

    @XmlElement
    private String myField1;

    @XmlAttribute
    private String myField2;
}
 

Когда я создаю схему JSON из классов java, результат будет таким

 {
    "type": "object",
    "properties": {
        "myField1": {"type": "string"}
        "myField2": {"type": "string"}
    }
}
 

Но я хочу различать XmlElement и XmlAttribute поля в схеме JSON. Ожидаемый результат должен быть таким

 {
    "type": "object",
    "properties": {
        "myField1": {"type": "string"}
        "$": {
            "type": "object",
            "properties": {
                "myField2": {"type": "string"}
            }
        }
        
    }
}
 

Есть ли какой-либо способ объединить все XmlAttribute аннотированные поля в "$" поле?