Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- "plugins": {
- "buildinfo": {}
- },
- "root": "metadata",
- "nodes": {
- "metadata": {
- "properties": {
- "deeplyEmbedded": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "deeplyEmbedded"
- }
- },
- "customEntities": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "customEntity"
- }
- },
- "dataTypesEntity": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "dataType"
- }
- },
- "constraintsEntity": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "constraintEntity"
- }
- },
- "a": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "parentA"
- }
- },
- "b": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "childB"
- }
- }
- }
- },
- "deeplyEmbedded": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "array1": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "array1"
- }
- },
- "single1": {
- "type": {
- "reference": "false",
- "array": "false",
- "object": "single1"
- }
- }
- }
- },
- "customEntity": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "stringScalar": {
- "type": {
- "type": "string"
- }
- },
- "arrayNoReference": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "arrayNoReference"
- }
- },
- "arrayRefArraySameParent": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "arrayRefArraySameParent"
- }
- },
- "referenceDataTypes": {
- "type": {
- "reference": "true",
- "array": "false",
- "object": "dataType"
- }
- },
- "selfReference": {
- "type": {
- "reference": true,
- "array": false,
- "object": "customEntity"
- }
- }
- }
- },
- "single1": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "single2": {
- "type": {
- "reference": "false",
- "array": "false",
- "object": "single2"
- }
- }
- }
- },
- "single2": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- }
- }
- },
- "array1": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "array2": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "array2"
- }
- }
- }
- },
- "array2": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "secondProperty": {
- "type": {
- "type": "string"
- }
- },
- "array3": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "array3"
- }
- }
- }
- },
- "array3": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "array4": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "array4"
- }
- }
- }
- },
- "array4": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "single5": {
- "type": {
- "reference": "false",
- "array": "false",
- "object": "single5"
- }
- },
- "array5": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "array5"
- }
- }
- }
- },
- "single5": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- }
- }
- },
- "array5": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "single6": {
- "type": {
- "reference": "false",
- "array": "false",
- "object": "single6"
- }
- }
- }
- },
- "single6": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- }
- }
- },
- "arrayNoReference": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "single2": {
- "type": {
- "reference": "false",
- "array": "false",
- "object": "single2"
- }
- }
- }
- },
- "arrayRefArraySameParent": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "referenceArraySameParent": {
- "type": {
- "reference": "true",
- "object": "arrayNoReference"
- },
- "valueProvider": {
- "type": "sameParent",
- "name": "arrayNoReferences"
- }
- }
- }
- },
- "dataType": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "booleanProperty": {
- "type": {
- "type": "boolean"
- }
- },
- "longProperty": {
- "type": {
- "type": "long"
- }
- },
- "intProperty": {
- "type": {
- "type": "integer"
- }
- },
- "doubleProperty": {
- "type": {
- "type": "double"
- }
- },
- "floatProperty": {
- "type": {
- "type": "float"
- }
- }
- }
- },
- "constraintEntity": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "required": {
- "type": {
- "type": "string"
- },
- "constraints": [
- {
- "type": "REQUIRED"
- }
- ]
- },
- "requiredRegexp": {
- "type": {
- "type": "string"
- },
- "constraints": [
- {
- "type": "REQUIRED"
- },
- {
- "type": "REGEXP",
- "id": "CONTAINS_AT_LEAST_ONE_ALPHA_NUM",
- "pattern": "^[ a-zA-Z0-9]+$",
- "message": "Name can only have alphanumeric characters"
- }
- ]
- },
- "regexp": {
- "type": {
- "type": "string"
- },
- "constraints": [
- {
- "type": "REGEXP",
- "id": "CONTAINS_AT_LEAST_ONE_NUM",
- "pattern": "^[0-9]+$",
- "message": "Name can only have numeric characters"
- }
- ]
- },
- "comboRegexp": {
- "type": {
- "type": "string"
- },
- "constraints": [
- {
- "type": "REGEXP",
- "id": "STARTS_WITH_COMBO",
- "pattern": "^combo.*",
- "message": "Name of owner must start with combo"
- },
- {
- "type": "REGEXP",
- "id": "ENDS_WITH_REGEXP",
- "pattern": ".*Regexp$",
- "message": "Name of owner must end with Regexp"
- }
- ]
- },
- "arrayConstraints": {
- "type": {
- "reference": "false",
- "array": "true",
- "object": "arrayConstraints"
- }
- },
- "singleConstraints": {
- "type": {
- "reference": "false",
- "array": "false",
- "object": "singleConstraints"
- }
- }
- },
- "constraints": [
- {
- "type": "UNIQUE",
- "id": "ROLE_UNIQUE_NAME",
- "scope": "WITHIN_PARENT",
- "properties": [
- "name"
- ]
- }
- ]
- },
- "arrayConstraints": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "arrayRequired": {
- "type": {
- "type": "string"
- },
- "constraints": [
- {
- "type": "REQUIRED"
- }
- ]
- },
- "arrayRequiredRegexp": {
- "type": {
- "type": "string"
- },
- "constraints": [
- {
- "type": "REQUIRED"
- },
- {
- "type": "REGEXP",
- "id": "CONTAINS_AT_LEAST_ONE_ALPHA_NUM",
- "pattern": "^[ a-zA-Z0-9]+$",
- "message": "Name can only have alphanumeric characters"
- }
- ]
- },
- "arrayRegexp": {
- "type": {
- "type": "string"
- },
- "constraints": [
- {
- "type": "REGEXP",
- "id": "CONTAINS_AT_LEAST_ONE_NUM",
- "pattern": "[0-9]+",
- "message": "Name can only have numeric characters"
- }
- ]
- }
- }
- },
- "singleConstraints": {
- "properties": {
- "name": {
- "type": {
- "type": "string"
- }
- },
- "childRequired": {
- "type": {
- "type": "string"
- },
- "constraints": [
- {
- "type": "REQUIRED"
- }
- ]
- },
- "childRequiredRegexp": {
- "type": {
- "type": "string"
- },
- "constraints": [
- {
- "type": "REQUIRED"
- },
- {
- "type": "REGEXP",
- "id": "CONTAINS_AT_LEAST_ONE_ALPHA_NUM",
- "pattern": "^[ a-zA-Z0-9]+$",
- "message": "Name can only have alphanumeric characters"
- }
- ]
- },
- "childRegexp": {
- "type": {
- "type": "string"
- },
- "constraints": [
- {
- "type": "REGEXP",
- "id": "CONTAINS_AT_LEAST_ONE_NUM",
- "pattern": "[0-9]+",
- "message": "Name can only have numeric characters"
- }
- ]
- }
- }
- },
- "parentA": {
- "properties": {
- "fieldA": {
- "type": {
- "type": "string"
- }
- }
- }
- },
- "childB": {
- "properties": {
- "fieldB": {
- "type": {
- "type": "string"
- }
- },
- "referenceC": {
- "type": {
- "reference": "true",
- "array": "false",
- "object": "childC"
- }
- }
- },
- "extends": "parentA"
- },
- "childC": {
- "properties": {
- "fieldC": {
- "type": {
- "type": "string"
- }
- }
- },
- "extends": "parentA"
- },
- "childD": {
- "properties": {
- "fieldD": {
- "type": {
- "type": "string"
- }
- }
- },
- "extends": "childC"
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement