/* * Geotoolkit - An Open Source Java GIS Toolkit * http://www.geotoolkit.org * * (C) 2010, Geomatys * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */ package org.geotoolkit.xal.model; import java.util.List; /** * <p>This interface maps PostalCode element.</p> * * <p>PostalCode is the container element for either simple or complex (extended) postal codes. * Type: Area Code, Postcode, etc.</p> * * <pre> * <xs:element name="PostalCode"> * <xs:complexType> * <xs:sequence> * <xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/> * <xs:element name="PostalCodeNumber" minOccurs="0" maxOccurs="unbounded"> * </xs:element> * <xs:element name="PostalCodeNumberExtension" minOccurs="0" maxOccurs="unbounded">... * </xs:element> * <xs:element name="PostTown" minOccurs="0">... * </xs:element> * <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/> * </xs:sequence> * <xs:attribute name="Type">... * </xs:attribute> * anyAttribute namespace="##other"/> * </xs:complexType> * </xs:element> * </pre> * * @author Samuel Andrés * @module */ public interface PostalCode { /** * * @return */ List<GenericTypedGrPostal> getAddressLines(); /** * <p>Specification of a postcode. * The postcode is formatted according to country-specific rules. * Example: SW3 0A8-1A, 600074, 2067</p> * * @return */ List<GenericTypedGrPostal> getPostalCodeNumbers(); /** * * @return */ List<PostalCodeNumberExtension> getPostalCodeNumberExtensions(); /** * * @return */ PostTown getPostTown(); /** * <p>Area Code, Postcode, Delivery code as in NZ, etc.</p> * @return */ String getType(); /** * * @param addressLines */ void setAddressLines(List<GenericTypedGrPostal> addressLines); /** * * @param postalCodeNumbers */ void setPostalCodeNumbers(List<GenericTypedGrPostal> postalCodeNumbers); /** * * @param postalCodeNumberExtensions */ void setPostalCodeNumberExtensions(List<PostalCodeNumberExtension> postalCodeNumberExtensions); /** * * @param postTown */ void setPostTown(PostTown postTown); /** * * @param type */ void setType(String type); }