@@ -0,0 +1,1860 @@
+package com.xqbase.baiji.schema;%0A%0Aimport com.xqbase.baiji.exceptions.BaijiTypeException;%0Aimport com.xqbase.baiji.util.ObjectUtil;%0Aimport org.codehaus.jackson.JsonNode;%0A%0A/**%0A * The MapSchema Definition.%0A *%0A * @author Tony He%0A */%0Apublic class MapSchema extends UnnamedSchema %7B%0A%0A    private final Schema valueSchema;%0A%0A    protected MapSchema(Schema valueSchema, PropertyMap propertyMap) %7B%0A        super(SchemaType.ARRAY, propertyMap);%0A        if (valueSchema == null)%0A            throw new IllegalArgumentException(%22Map value schema can't be null%22);%0A        this.valueSchema = valueSchema;%0A    %7D%0A%0A    /**%0A     * Static function to return new instance of map schema%0A     *%0A     * @param mapNode  JSON object for the map schema.%0A     * @param props    properties map.%0A     * @param names    list of named schemas already read.%0A     * @param encSpace enclosing namespace of the map schema.%0A     * @return a %7B@link MapSchema%7D instance.%0A     */%0A    public static MapSchema newInstance(JsonNode mapNode, PropertyMap props, SchemaNames names, String encSpace) %7B%0A        JsonNode valuesNode = mapNode.get(%22values%22);%0A        if (valuesNode == null) %7B%0A            throw new BaijiTypeException(%22Map does not have 'values'%22);%0A        %7D%0A%0A        return new MapSchema(parse(valuesNode, names, encSpace), props);%0A    %7D%0A%0A    @Override%0A    public boolean equals(Object obj) %7B%0A        if (this == obj) %7B%0A            return true;%0A        %7D%0A        if (!(obj instanceof MapSchema)) %7B%0A            return false;%0A        %7D%0A        MapSchema that = (MapSchema) obj;%0A        if (that == null) %7B%0A            return false;%0A        %7D%0A        return valueSchema.equals(that.valueSchema) && ObjectUtil.equals(that.getPropertyMap(), getPropertyMap());%0A    %7D%0A%0A%0A    @Override%0A    public int hashCode() %7B%0A        return 29 * valueSchema.hashCode() + ObjectUtil.hashCode(getPropertyMap());%0A    %7D%0A%7D%0A

add the MapSchema definition...