Page missing config

Dear Appbuilders,
I built upon the app-template Multi-Page with Sidebar Navigation and adjusted the main-page such that the second-page is a child of it instead a separate page.
I came up with the following JSON, but now get the following errors, there is some property missing but I did not find out with the docu what is happening here:

ERROR: REQUIRED
/mainPage/main.page (#/pages/0)
$.pages[0].@: is missing but it is required
ERROR: REQUIRED
/mainPage/main.page (#/pages/0/children/0)
$.pages[0].children[0].@: is missing but it is required

The changes I made to the template are:

{
      "main.page": {
        "id": "main_page",
        "screens": [
          {
            "layout": "./main.fixedGrid"
          }
        ],
        "children": [
          {
            "label": "Second",
            "page": "/secondPage/second.page"
          }
        ]
      }
    }
"app.navigation": {
    "type": "app",
    "config": {
      "enabled": true,
      "expandAll": true,
      "permanent": false
    },
    "entries": [
      {
        "label": "Main",
        "page": "./mainPage/main.page",
        "children": [
          {
            "page": "/secondPage/second.page",
            "label": "second page"
          }
        ]
      }
    ]
  }

Can anybody help interpreting this error?

For the side-bar navigation you can do only the changes in the app.navigation and do not change the individual pages. This already will result in indention in the navigation.

You can also specify sub-pages inside a page file, but your syntax is wrong. Instead of specifying a page, you have to specify screens with layout.
That would be:

{
  "id": "main_page",
  "screens": [
    {
      "layout": "./main.fixedGrid"
    }
  ],
  "children": [
    {
      "id":"second_page",
      "label": "Second",
      "screens": [
        {
          "layout": "../secondPage/second.fixedGrid"
        }
      ]
    }
  ]
}

and then reference the sub-pages accordingly in app.navigation:

{
 "type": "app",
    "config": {
      "enabled": true,
      "expandAll": true,
      "permanent": false
    },
    "entries": [
      {
        "label": "Main",
        "page": "./mainPage/main.page",
        "children": [
          {
            "label": "second page",
            "page": "main_page.second_page"
          }
        ]
      }
    ]
}

In this case you do not use the file second.page. You can delete it.
The App Builder Manual also contains two full examples for navigation
https://playground-feature.onedata.de/apps/apps-docs/odml-documentation/AppBuilder/navigation/Navigation.html