Node nameNode = elements.get(0);
if (!(nameNode instanceof Name)) {
throw new ParserException("expect a name, but got: " + nameNode.toString(), nameNode);
}
String id = ((Name) nameNode).id;
if (properties.containsKey(id)) {
throw new ParserException("duplicated name: " + nameNode.toString(), nameNode);
}
Node typeNode = elements.get(1);
if (!(typeNode instanceof Name)) {