docs: protected void parsePropertyOrChildNodeDefinitions( TokenStream tokens,
                                                          JcrNodeTypeTemplate nodeType ) throws ConstraintViolationException {
          while (true) {
              // Keep reading while we see a property definition or child node definition ...
              if (tokens.matches('-')) {
                  parsePropertyDefinition(tokens, nodeType);
              } else if (tokens.matches('+')) {
                  parseChildNodeDefinition(tokens, nodeType);
              } else {
                  // The next token does not signal either one of these, so stop ...
                  break;
              }
          }
      }