diff --git a/plugins/org.etsi.mts.tdl.openapi2tdl.next/src/org/etsi/mts/tdl/openapi2tdl/next/OpenAPI2TDLTranslatorNext.java b/plugins/org.etsi.mts.tdl.openapi2tdl.next/src/org/etsi/mts/tdl/openapi2tdl/next/OpenAPI2TDLTranslatorNext.java index e049eb4bfb615677a454626e6caa1c5a2f2b2bec..eb06290666493edce37eb80fb6ed898fa1575fa4 100644 --- a/plugins/org.etsi.mts.tdl.openapi2tdl.next/src/org/etsi/mts/tdl/openapi2tdl/next/OpenAPI2TDLTranslatorNext.java +++ b/plugins/org.etsi.mts.tdl.openapi2tdl.next/src/org/etsi/mts/tdl/openapi2tdl/next/OpenAPI2TDLTranslatorNext.java @@ -438,6 +438,9 @@ public class OpenAPI2TDLTranslatorNext extends AbstractTranslator { } private void getAllProperties(Schema<?> schema, Map<String, Schema> properties) { + String reference = schema.get$ref(); + if (reference != null) + schema = ModelUtils.getReferencedSchema(model, schema); List<Schema> xOf = schema.getAllOf(); if (xOf == null) xOf = schema.getAnyOf(); @@ -705,7 +708,7 @@ public class OpenAPI2TDLTranslatorNext extends AbstractTranslator { } } else if (type instanceof StructuredDataType) { - for (CodegenProperty var: codeGen.getVars()) { + for (CodegenProperty var: codeGen.getAllVars()) { String vName = var.getBaseName(); Member member = null; for (Member m: ((StructuredDataType) type).allMembers()) {