Recently, a tiny SOAP Web service has been published and as we like validating the usability of the generated package, we often do some test cases. As we said, it's a tiny SOAP Web service because it provides only one operation which is ChangeAreaUnit. Its WSDL is located here: http://www.webservicex.net/ConvertArea.asmx?WSDL.
Even if it's a tiny one, the unique operation accepts tones of unit which we didn't know the existence and the name for some of them until now:
- buJapan: for Japan Base Unit,
- manzanaCostaRican, manzanaArgentina: we know the Manzana liqueur, but we couldn't find any details for these measurement units,
- caoVietnam,
- etc.
But the units are not the point.
The point is that as the base units are described in the WSDL in a restriction element containing itself enumeration elements described as:
<s:restriction base="s:string">
<s:enumeration value="acre" />
<s:enumeration value="acrecommercial" />
<s:enumeration value="acreIreland" />
<s:enumeration value="acresurvey" />
<s:enumeration value="are" />
<s:enumeration value="baseboxtinplatedsteel" />
<s:enumeration value="binTaiwan" />
<s:enumeration value="buJapan" />
<s:enumeration value="canteroEcuador" />
<s:enumeration value="caoVietnam" />
<s:enumeration value="centaire" />
<s:enumeration value="circularfootinternational" />
<s:enumeration value="circularfootUSsurvey" />
<s:enumeration value="circularinchinternational" />
<s:enumeration value="circularinchUSsurvey" />
<s:enumeration value="hectare" />
<s:enumeration value="laborCanada" />
<s:enumeration value="laborUSsurvey" />
<s:enumeration value="manzanaCostaRican" />
<s:enumeration value="manzanaArgentina" />
<s:enumeration value="rood" />
<s:enumeration value="saoVietnam" />
<s:enumeration value="scrupleancientRome" />
<s:enumeration value="sectionUSsurvey" />
<s:enumeration value="square" />
<s:enumeration value="squareSriLanka" />
<s:enumeration value="squareangstrom" />
<s:enumeration value="squareastronomicalunit" />
<s:enumeration value="squarecablelengthUSsurvey" />
<s:enumeration value="squarecaliber" />
<s:enumeration value="squarecentimeter" />
<s:enumeration value="squarechainGunterUSsurvey" />
<s:enumeration value="squarechainRamdenEngineer" />
<s:enumeration value="squarecubit" />
<s:enumeration value="squarecubitancientEgypt" />
<s:enumeration value="squaredigit" />
<s:enumeration value="squarefathom" />
<s:enumeration value="squarefootinternational" />
<s:enumeration value="squarefootUSsurvey" />
<s:enumeration value="squarefurlongUSsurvey" />
<s:enumeration value="squaregigameter" />
<s:enumeration value="squarehectometer" />
<s:enumeration value="squareinchinternational" />
<s:enumeration value="squareinchUSsurvey" />
<s:enumeration value="squarekilometer" />
<s:enumeration value="squareleaguenautical" />
<s:enumeration value="squareleagueUSstatute" />
<s:enumeration value="squarelightyear" />
<s:enumeration value="squarelinkGunterUSsurvey" />
<s:enumeration value="squarelinkRamdenEngineer" />
<s:enumeration value="squaremegameter" />
<s:enumeration value="squaremeter" />
<s:enumeration value="squaremicroinch" />
<s:enumeration value="squaremicrometer" />
<s:enumeration value="squaremicromicron" />
<s:enumeration value="squaremicron" />
<s:enumeration value="squaremil" />
<s:enumeration value="squaremileinternational" />
<s:enumeration value="squaremileintnautical" />
<s:enumeration value="squaremileUSnautical" />
<s:enumeration value="squaremileUSstatute" />
<s:enumeration value="squaremileUSsurvey" />
<s:enumeration value="squaremillimeter" />
<s:enumeration value="squaremillimicron" />
<s:enumeration value="squarenanometer" />
<s:enumeration value="squareParisfootCanada" />
<s:enumeration value="squareparsec" />
<s:enumeration value="squareperchIreland" />
<s:enumeration value="squareperchUSsurvey" />
<s:enumeration value="squarepetameter" />
<s:enumeration value="squarepicometer" />
<s:enumeration value="squarerodNetherlands" />
<s:enumeration value="squaretenthmeter" />
<s:enumeration value="squareyardUSsurvey" />
<s:enumeration value="squareyardinternational" />
<s:enumeration value="squareyoctometer" />
<s:enumeration value="squareyottameter" />
<s:enumeration value="squarezeptometer" />
<s:enumeration value="squarezettameter" />
<s:enumeration value="townshipUSsurvey" />
</s:restriction>
This restriction element is catched and also its enumeration elements by the generator and then generated as the ConvertAreaEnumAreas class:
class ConvertAreaEnumAreas extends ConvertAreaWsdlClass
{
/**
* Constant for value 'acre'
* @return string 'acre'
*/
const VALUE_ACRE = 'acre';
/**
* Constant for value 'acrecommercial'
* @return string 'acrecommercial'
*/
const VALUE_ACRECOMMERCIAL = 'acrecommercial';
/**
* Constant for value 'acreIreland'
* @return string 'acreIreland'
*/
const VALUE_ACREIRELAND = 'acreIreland';
/**
* Constant for value 'acresurvey'
* @return string 'acresurvey'
*/
const VALUE_ACRESURVEY = 'acresurvey';
/**
* Constant for value 'are'
* @return string 'are'
*/
const VALUE_ARE = 'are';
/**
* Constant for value 'baseboxtinplatedsteel'
* @return string 'baseboxtinplatedsteel'
*/
const VALUE_BASEBOXTINPLATEDSTEEL = 'baseboxtinplatedsteel';
/**
* Constant for value 'binTaiwan'
* @return string 'binTaiwan'
*/
const VALUE_BINTAIWAN = 'binTaiwan';
/**
* Constant for value 'buJapan'
* @return string 'buJapan'
*/
const VALUE_BUJAPAN = 'buJapan';
/**
* Constant for value 'canteroEcuador'
* @return string 'canteroEcuador'
*/
const VALUE_CANTEROECUADOR = 'canteroEcuador';
/**
* Constant for value 'caoVietnam'
* @return string 'caoVietnam'
*/
const VALUE_CAOVIETNAM = 'caoVietnam';
/**
* Constant for value 'centaire'
* @return string 'centaire'
*/
const VALUE_CENTAIRE = 'centaire';
/**
* Constant for value 'circularfootinternational'
* @return string 'circularfootinternational'
*/
const VALUE_CIRCULARFOOTINTERNATIONAL = 'circularfootinternational';
/**
* Constant for value 'circularfootUSsurvey'
* @return string 'circularfootUSsurvey'
*/
const VALUE_CIRCULARFOOTUSSURVEY = 'circularfootUSsurvey';
/**
* Constant for value 'circularinchinternational'
* @return string 'circularinchinternational'
*/
const VALUE_CIRCULARINCHINTERNATIONAL = 'circularinchinternational';
/**
* Constant for value 'circularinchUSsurvey'
* @return string 'circularinchUSsurvey'
*/
const VALUE_CIRCULARINCHUSSURVEY = 'circularinchUSsurvey';
/**
* Constant for value 'hectare'
* @return string 'hectare'
*/
const VALUE_HECTARE = 'hectare';
/**
* Constant for value 'laborCanada'
* @return string 'laborCanada'
*/
const VALUE_LABORCANADA = 'laborCanada';
/**
* Constant for value 'laborUSsurvey'
* @return string 'laborUSsurvey'
*/
const VALUE_LABORUSSURVEY = 'laborUSsurvey';
/**
* Constant for value 'manzanaCostaRican'
* @return string 'manzanaCostaRican'
*/
const VALUE_MANZANACOSTARICAN = 'manzanaCostaRican';
/**
* Constant for value 'manzanaArgentina'
* @return string 'manzanaArgentina'
*/
const VALUE_MANZANAARGENTINA = 'manzanaArgentina';
/**
* Constant for value 'rood'
* @return string 'rood'
*/
const VALUE_ROOD = 'rood';
/**
* Constant for value 'saoVietnam'
* @return string 'saoVietnam'
*/
const VALUE_SAOVIETNAM = 'saoVietnam';
/**
* Constant for value 'scrupleancientRome'
* @return string 'scrupleancientRome'
*/
const VALUE_SCRUPLEANCIENTROME = 'scrupleancientRome';
/**
* Constant for value 'sectionUSsurvey'
* @return string 'sectionUSsurvey'
*/
const VALUE_SECTIONUSSURVEY = 'sectionUSsurvey';
/**
* Constant for value 'square'
* @return string 'square'
*/
const VALUE_SQUARE = 'square';
/**
* Constant for value 'squareSriLanka'
* @return string 'squareSriLanka'
*/
const VALUE_SQUARESRILANKA = 'squareSriLanka';
/**
* Constant for value 'squareangstrom'
* @return string 'squareangstrom'
*/
const VALUE_SQUAREANGSTROM = 'squareangstrom';
/**
* Constant for value 'squareastronomicalunit'
* @return string 'squareastronomicalunit'
*/
const VALUE_SQUAREASTRONOMICALUNIT = 'squareastronomicalunit';
/**
* Constant for value 'squarecablelengthUSsurvey'
* @return string 'squarecablelengthUSsurvey'
*/
const VALUE_SQUARECABLELENGTHUSSURVEY = 'squarecablelengthUSsurvey';
/**
* Constant for value 'squarecaliber'
* @return string 'squarecaliber'
*/
const VALUE_SQUARECALIBER = 'squarecaliber';
/**
* Constant for value 'squarecentimeter'
* @return string 'squarecentimeter'
*/
const VALUE_SQUARECENTIMETER = 'squarecentimeter';
/**
* Constant for value 'squarechainGunterUSsurvey'
* @return string 'squarechainGunterUSsurvey'
*/
const VALUE_SQUARECHAINGUNTERUSSURVEY = 'squarechainGunterUSsurvey';
/**
* Constant for value 'squarechainRamdenEngineer'
* @return string 'squarechainRamdenEngineer'
*/
const VALUE_SQUARECHAINRAMDENENGINEER = 'squarechainRamdenEngineer';
/**
* Constant for value 'squarecubit'
* @return string 'squarecubit'
*/
const VALUE_SQUARECUBIT = 'squarecubit';
/**
* Constant for value 'squarecubitancientEgypt'
* @return string 'squarecubitancientEgypt'
*/
const VALUE_SQUARECUBITANCIENTEGYPT = 'squarecubitancientEgypt';
/**
* Constant for value 'squaredigit'
* @return string 'squaredigit'
*/
const VALUE_SQUAREDIGIT = 'squaredigit';
/**
* Constant for value 'squarefathom'
* @return string 'squarefathom'
*/
const VALUE_SQUAREFATHOM = 'squarefathom';
/**
* Constant for value 'squarefootinternational'
* @return string 'squarefootinternational'
*/
const VALUE_SQUAREFOOTINTERNATIONAL = 'squarefootinternational';
/**
* Constant for value 'squarefootUSsurvey'
* @return string 'squarefootUSsurvey'
*/
const VALUE_SQUAREFOOTUSSURVEY = 'squarefootUSsurvey';
/**
* Constant for value 'squarefurlongUSsurvey'
* @return string 'squarefurlongUSsurvey'
*/
const VALUE_SQUAREFURLONGUSSURVEY = 'squarefurlongUSsurvey';
/**
* Constant for value 'squaregigameter'
* @return string 'squaregigameter'
*/
const VALUE_SQUAREGIGAMETER = 'squaregigameter';
/**
* Constant for value 'squarehectometer'
* @return string 'squarehectometer'
*/
const VALUE_SQUAREHECTOMETER = 'squarehectometer';
/**
* Constant for value 'squareinchinternational'
* @return string 'squareinchinternational'
*/
const VALUE_SQUAREINCHINTERNATIONAL = 'squareinchinternational';
/**
* Constant for value 'squareinchUSsurvey'
* @return string 'squareinchUSsurvey'
*/
const VALUE_SQUAREINCHUSSURVEY = 'squareinchUSsurvey';
/**
* Constant for value 'squarekilometer'
* @return string 'squarekilometer'
*/
const VALUE_SQUAREKILOMETER = 'squarekilometer';
/**
* Constant for value 'squareleaguenautical'
* @return string 'squareleaguenautical'
*/
const VALUE_SQUARELEAGUENAUTICAL = 'squareleaguenautical';
/**
* Constant for value 'squareleagueUSstatute'
* @return string 'squareleagueUSstatute'
*/
const VALUE_SQUARELEAGUEUSSTATUTE = 'squareleagueUSstatute';
/**
* Constant for value 'squarelightyear'
* @return string 'squarelightyear'
*/
const VALUE_SQUARELIGHTYEAR = 'squarelightyear';
/**
* Constant for value 'squarelinkGunterUSsurvey'
* @return string 'squarelinkGunterUSsurvey'
*/
const VALUE_SQUARELINKGUNTERUSSURVEY = 'squarelinkGunterUSsurvey';
/**
* Constant for value 'squarelinkRamdenEngineer'
* @return string 'squarelinkRamdenEngineer'
*/
const VALUE_SQUARELINKRAMDENENGINEER = 'squarelinkRamdenEngineer';
/**
* Constant for value 'squaremegameter'
* @return string 'squaremegameter'
*/
const VALUE_SQUAREMEGAMETER = 'squaremegameter';
/**
* Constant for value 'squaremeter'
* @return string 'squaremeter'
*/
const VALUE_SQUAREMETER = 'squaremeter';
/**
* Constant for value 'squaremicroinch'
* @return string 'squaremicroinch'
*/
const VALUE_SQUAREMICROINCH = 'squaremicroinch';
/**
* Constant for value 'squaremicrometer'
* @return string 'squaremicrometer'
*/
const VALUE_SQUAREMICROMETER = 'squaremicrometer';
/**
* Constant for value 'squaremicromicron'
* @return string 'squaremicromicron'
*/
const VALUE_SQUAREMICROMICRON = 'squaremicromicron';
/**
* Constant for value 'squaremicron'
* @return string 'squaremicron'
*/
const VALUE_SQUAREMICRON = 'squaremicron';
/**
* Constant for value 'squaremil'
* @return string 'squaremil'
*/
const VALUE_SQUAREMIL = 'squaremil';
/**
* Constant for value 'squaremileinternational'
* @return string 'squaremileinternational'
*/
const VALUE_SQUAREMILEINTERNATIONAL = 'squaremileinternational';
/**
* Constant for value 'squaremileintnautical'
* @return string 'squaremileintnautical'
*/
const VALUE_SQUAREMILEINTNAUTICAL = 'squaremileintnautical';
/**
* Constant for value 'squaremileUSnautical'
* @return string 'squaremileUSnautical'
*/
const VALUE_SQUAREMILEUSNAUTICAL = 'squaremileUSnautical';
/**
* Constant for value 'squaremileUSstatute'
* @return string 'squaremileUSstatute'
*/
const VALUE_SQUAREMILEUSSTATUTE = 'squaremileUSstatute';
/**
* Constant for value 'squaremileUSsurvey'
* @return string 'squaremileUSsurvey'
*/
const VALUE_SQUAREMILEUSSURVEY = 'squaremileUSsurvey';
/**
* Constant for value 'squaremillimeter'
* @return string 'squaremillimeter'
*/
const VALUE_SQUAREMILLIMETER = 'squaremillimeter';
/**
* Constant for value 'squaremillimicron'
* @return string 'squaremillimicron'
*/
const VALUE_SQUAREMILLIMICRON = 'squaremillimicron';
/**
* Constant for value 'squarenanometer'
* @return string 'squarenanometer'
*/
const VALUE_SQUARENANOMETER = 'squarenanometer';
/**
* Constant for value 'squareParisfootCanada'
* @return string 'squareParisfootCanada'
*/
const VALUE_SQUAREPARISFOOTCANADA = 'squareParisfootCanada';
/**
* Constant for value 'squareparsec'
* @return string 'squareparsec'
*/
const VALUE_SQUAREPARSEC = 'squareparsec';
/**
* Constant for value 'squareperchIreland'
* @return string 'squareperchIreland'
*/
const VALUE_SQUAREPERCHIRELAND = 'squareperchIreland';
/**
* Constant for value 'squareperchUSsurvey'
* @return string 'squareperchUSsurvey'
*/
const VALUE_SQUAREPERCHUSSURVEY = 'squareperchUSsurvey';
/**
* Constant for value 'squarepetameter'
* @return string 'squarepetameter'
*/
const VALUE_SQUAREPETAMETER = 'squarepetameter';
/**
* Constant for value 'squarepicometer'
* @return string 'squarepicometer'
*/
const VALUE_SQUAREPICOMETER = 'squarepicometer';
/**
* Constant for value 'squarerodNetherlands'
* @return string 'squarerodNetherlands'
*/
const VALUE_SQUARERODNETHERLANDS = 'squarerodNetherlands';
/**
* Constant for value 'squaretenthmeter'
* @return string 'squaretenthmeter'
*/
const VALUE_SQUARETENTHMETER = 'squaretenthmeter';
/**
* Constant for value 'squareyardUSsurvey'
* @return string 'squareyardUSsurvey'
*/
const VALUE_SQUAREYARDUSSURVEY = 'squareyardUSsurvey';
/**
* Constant for value 'squareyardinternational'
* @return string 'squareyardinternational'
*/
const VALUE_SQUAREYARDINTERNATIONAL = 'squareyardinternational';
/**
* Constant for value 'squareyoctometer'
* @return string 'squareyoctometer'
*/
const VALUE_SQUAREYOCTOMETER = 'squareyoctometer';
/**
* Constant for value 'squareyottameter'
* @return string 'squareyottameter'
*/
const VALUE_SQUAREYOTTAMETER = 'squareyottameter';
/**
* Constant for value 'squarezeptometer'
* @return string 'squarezeptometer'
*/
const VALUE_SQUAREZEPTOMETER = 'squarezeptometer';
/**
* Constant for value 'squarezettameter'
* @return string 'squarezettameter'
*/
const VALUE_SQUAREZETTAMETER = 'squarezettameter';
/**
* Constant for value 'townshipUSsurvey'
* @return string 'townshipUSsurvey'
*/
const VALUE_TOWNSHIPUSSURVEY = 'townshipUSsurvey';
/**
* Return true if value is allowed
* @uses ConvertAreaEnumAreas::VALUE_ACRE
* @uses ConvertAreaEnumAreas::VALUE_ACRECOMMERCIAL
* @uses ConvertAreaEnumAreas::VALUE_ACREIRELAND
* @uses ConvertAreaEnumAreas::VALUE_ACRESURVEY
* @uses ConvertAreaEnumAreas::VALUE_ARE
* @uses ConvertAreaEnumAreas::VALUE_BASEBOXTINPLATEDSTEEL
* @uses ConvertAreaEnumAreas::VALUE_BINTAIWAN
* @uses ConvertAreaEnumAreas::VALUE_BUJAPAN
* @uses ConvertAreaEnumAreas::VALUE_CANTEROECUADOR
* @uses ConvertAreaEnumAreas::VALUE_CAOVIETNAM
* @uses ConvertAreaEnumAreas::VALUE_CENTAIRE
* @uses ConvertAreaEnumAreas::VALUE_CIRCULARFOOTINTERNATIONAL
* @uses ConvertAreaEnumAreas::VALUE_CIRCULARFOOTUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_CIRCULARINCHINTERNATIONAL
* @uses ConvertAreaEnumAreas::VALUE_CIRCULARINCHUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_HECTARE
* @uses ConvertAreaEnumAreas::VALUE_LABORCANADA
* @uses ConvertAreaEnumAreas::VALUE_LABORUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_MANZANACOSTARICAN
* @uses ConvertAreaEnumAreas::VALUE_MANZANAARGENTINA
* @uses ConvertAreaEnumAreas::VALUE_ROOD
* @uses ConvertAreaEnumAreas::VALUE_SAOVIETNAM
* @uses ConvertAreaEnumAreas::VALUE_SCRUPLEANCIENTROME
* @uses ConvertAreaEnumAreas::VALUE_SECTIONUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_SQUARE
* @uses ConvertAreaEnumAreas::VALUE_SQUARESRILANKA
* @uses ConvertAreaEnumAreas::VALUE_SQUAREANGSTROM
* @uses ConvertAreaEnumAreas::VALUE_SQUAREASTRONOMICALUNIT
* @uses ConvertAreaEnumAreas::VALUE_SQUARECABLELENGTHUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_SQUARECALIBER
* @uses ConvertAreaEnumAreas::VALUE_SQUARECENTIMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUARECHAINGUNTERUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_SQUARECHAINRAMDENENGINEER
* @uses ConvertAreaEnumAreas::VALUE_SQUARECUBIT
* @uses ConvertAreaEnumAreas::VALUE_SQUARECUBITANCIENTEGYPT
* @uses ConvertAreaEnumAreas::VALUE_SQUAREDIGIT
* @uses ConvertAreaEnumAreas::VALUE_SQUAREFATHOM
* @uses ConvertAreaEnumAreas::VALUE_SQUAREFOOTINTERNATIONAL
* @uses ConvertAreaEnumAreas::VALUE_SQUAREFOOTUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_SQUAREFURLONGUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_SQUAREGIGAMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREHECTOMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREINCHINTERNATIONAL
* @uses ConvertAreaEnumAreas::VALUE_SQUAREINCHUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_SQUAREKILOMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUARELEAGUENAUTICAL
* @uses ConvertAreaEnumAreas::VALUE_SQUARELEAGUEUSSTATUTE
* @uses ConvertAreaEnumAreas::VALUE_SQUARELIGHTYEAR
* @uses ConvertAreaEnumAreas::VALUE_SQUARELINKGUNTERUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_SQUARELINKRAMDENENGINEER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMEGAMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMICROINCH
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMICROMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMICROMICRON
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMICRON
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMIL
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMILEINTERNATIONAL
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMILEINTNAUTICAL
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMILEUSNAUTICAL
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMILEUSSTATUTE
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMILEUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMILLIMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREMILLIMICRON
* @uses ConvertAreaEnumAreas::VALUE_SQUARENANOMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREPARISFOOTCANADA
* @uses ConvertAreaEnumAreas::VALUE_SQUAREPARSEC
* @uses ConvertAreaEnumAreas::VALUE_SQUAREPERCHIRELAND
* @uses ConvertAreaEnumAreas::VALUE_SQUAREPERCHUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_SQUAREPETAMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREPICOMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUARERODNETHERLANDS
* @uses ConvertAreaEnumAreas::VALUE_SQUARETENTHMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREYARDUSSURVEY
* @uses ConvertAreaEnumAreas::VALUE_SQUAREYARDINTERNATIONAL
* @uses ConvertAreaEnumAreas::VALUE_SQUAREYOCTOMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREYOTTAMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREZEPTOMETER
* @uses ConvertAreaEnumAreas::VALUE_SQUAREZETTAMETER
* @uses ConvertAreaEnumAreas::VALUE_TOWNSHIPUSSURVEY
* @param mixed $_value value
* @return bool true|false
*/
public static function valueIsValid($_value)
{
return in_array($_value,array(ConvertAreaEnumAreas::VALUE_ACRE,ConvertAreaEnumAreas::VALUE_ACRECOMMERCIAL,ConvertAreaEnumAreas::VALUE_ACREIRELAND,ConvertAreaEnumAreas::VALUE_ACRESURVEY,ConvertAreaEnumAreas::VALUE_ARE,ConvertAreaEnumAreas::VALUE_BASEBOXTINPLATEDSTEEL,ConvertAreaEnumAreas::VALUE_BINTAIWAN,ConvertAreaEnumAreas::VALUE_BUJAPAN,ConvertAreaEnumAreas::VALUE_CANTEROECUADOR,ConvertAreaEnumAreas::VALUE_CAOVIETNAM,ConvertAreaEnumAreas::VALUE_CENTAIRE,ConvertAreaEnumAreas::VALUE_CIRCULARFOOTINTERNATIONAL,ConvertAreaEnumAreas::VALUE_CIRCULARFOOTUSSURVEY,ConvertAreaEnumAreas::VALUE_CIRCULARINCHINTERNATIONAL,ConvertAreaEnumAreas::VALUE_CIRCULARINCHUSSURVEY,ConvertAreaEnumAreas::VALUE_HECTARE,ConvertAreaEnumAreas::VALUE_LABORCANADA,ConvertAreaEnumAreas::VALUE_LABORUSSURVEY,ConvertAreaEnumAreas::VALUE_MANZANACOSTARICAN,ConvertAreaEnumAreas::VALUE_MANZANAARGENTINA,ConvertAreaEnumAreas::VALUE_ROOD,ConvertAreaEnumAreas::VALUE_SAOVIETNAM,ConvertAreaEnumAreas::VALUE_SCRUPLEANCIENTROME,ConvertAreaEnumAreas::VALUE_SECTIONUSSURVEY,ConvertAreaEnumAreas::VALUE_SQUARE,ConvertAreaEnumAreas::VALUE_SQUARESRILANKA,ConvertAreaEnumAreas::VALUE_SQUAREANGSTROM,ConvertAreaEnumAreas::VALUE_SQUAREASTRONOMICALUNIT,ConvertAreaEnumAreas::VALUE_SQUARECABLELENGTHUSSURVEY,ConvertAreaEnumAreas::VALUE_SQUARECALIBER,ConvertAreaEnumAreas::VALUE_SQUARECENTIMETER,ConvertAreaEnumAreas::VALUE_SQUARECHAINGUNTERUSSURVEY,ConvertAreaEnumAreas::VALUE_SQUARECHAINRAMDENENGINEER,ConvertAreaEnumAreas::VALUE_SQUARECUBIT,ConvertAreaEnumAreas::VALUE_SQUARECUBITANCIENTEGYPT,ConvertAreaEnumAreas::VALUE_SQUAREDIGIT,ConvertAreaEnumAreas::VALUE_SQUAREFATHOM,ConvertAreaEnumAreas::VALUE_SQUAREFOOTINTERNATIONAL,ConvertAreaEnumAreas::VALUE_SQUAREFOOTUSSURVEY,ConvertAreaEnumAreas::VALUE_SQUAREFURLONGUSSURVEY,ConvertAreaEnumAreas::VALUE_SQUAREGIGAMETER,ConvertAreaEnumAreas::VALUE_SQUAREHECTOMETER,ConvertAreaEnumAreas::VALUE_SQUAREINCHINTERNATIONAL,ConvertAreaEnumAreas::VALUE_SQUAREINCHUSSURVEY,ConvertAreaEnumAreas::VALUE_SQUAREKILOMETER,ConvertAreaEnumAreas::VALUE_SQUARELEAGUENAUTICAL,ConvertAreaEnumAreas::VALUE_SQUARELEAGUEUSSTATUTE,ConvertAreaEnumAreas::VALUE_SQUARELIGHTYEAR,ConvertAreaEnumAreas::VALUE_SQUARELINKGUNTERUSSURVEY,ConvertAreaEnumAreas::VALUE_SQUARELINKRAMDENENGINEER,ConvertAreaEnumAreas::VALUE_SQUAREMEGAMETER,ConvertAreaEnumAreas::VALUE_SQUAREMETER,ConvertAreaEnumAreas::VALUE_SQUAREMICROINCH,ConvertAreaEnumAreas::VALUE_SQUAREMICROMETER,ConvertAreaEnumAreas::VALUE_SQUAREMICROMICRON,ConvertAreaEnumAreas::VALUE_SQUAREMICRON,ConvertAreaEnumAreas::VALUE_SQUAREMIL,ConvertAreaEnumAreas::VALUE_SQUAREMILEINTERNATIONAL,ConvertAreaEnumAreas::VALUE_SQUAREMILEINTNAUTICAL,ConvertAreaEnumAreas::VALUE_SQUAREMILEUSNAUTICAL,ConvertAreaEnumAreas::VALUE_SQUAREMILEUSSTATUTE,ConvertAreaEnumAreas::VALUE_SQUAREMILEUSSURVEY,ConvertAreaEnumAreas::VALUE_SQUAREMILLIMETER,ConvertAreaEnumAreas::VALUE_SQUAREMILLIMICRON,ConvertAreaEnumAreas::VALUE_SQUARENANOMETER,ConvertAreaEnumAreas::VALUE_SQUAREPARISFOOTCANADA,ConvertAreaEnumAreas::VALUE_SQUAREPARSEC,ConvertAreaEnumAreas::VALUE_SQUAREPERCHIRELAND,ConvertAreaEnumAreas::VALUE_SQUAREPERCHUSSURVEY,ConvertAreaEnumAreas::VALUE_SQUAREPETAMETER,ConvertAreaEnumAreas::VALUE_SQUAREPICOMETER,ConvertAreaEnumAreas::VALUE_SQUARERODNETHERLANDS,ConvertAreaEnumAreas::VALUE_SQUARETENTHMETER,ConvertAreaEnumAreas::VALUE_SQUAREYARDUSSURVEY,ConvertAreaEnumAreas::VALUE_SQUAREYARDINTERNATIONAL,ConvertAreaEnumAreas::VALUE_SQUAREYOCTOMETER,ConvertAreaEnumAreas::VALUE_SQUAREYOTTAMETER,ConvertAreaEnumAreas::VALUE_SQUAREZEPTOMETER,ConvertAreaEnumAreas::VALUE_SQUAREZETTAMETER,ConvertAreaEnumAreas::VALUE_TOWNSHIPUSSURVEY));
}
/**
* Method returning the class name
* @return string __CLASS__
*/
public function __toString()
{
return __CLASS__;
}
}
As you can see, each enumeration value is represented by one constant named as the original value (and cleaned when necessary).
This class is very useful because you don't have to remember how exactly each unit is written because you can simply use the constant.
The simpliest test we can do is to call the unique operation ChangeAreaUnit.
To do so, we generate the package from the WSDL. Don't forget to disable the option that sets the result with a generated object class when calling the operation (you would have the response in a response object):
Instead of having this generated (by calling WsdlToPhpGenerator::setOptionResponseAsWsdlObject(true)):
$this->setResult(new ConvertAreaStructChangeAreaUnitResponse(self::getSoapClient()
->ChangeAreaUnit(array('AreaValue'=>$_convertAreaStructChangeAreaUnit->getAreaValue(),
'fromAreaUnit'=>$_convertAreaStructChangeAreaUnit->getFromAreaUnit(),
'toAreaUnit'=>$_convertAreaStructChangeAreaUnit->getToAreaUnit()))));
We have this (by calling WsdlToPhpGenerator::setOptionResponseAsWsdlObject(false)):
$this->setResult(self::getSoapClient()
->ChangeAreaUnit(array('AreaValue'=>$_convertAreaStructChangeAreaUnit->getAreaValue(),
'fromAreaUnit'=>$_convertAreaStructChangeAreaUnit->getFromAreaUnit(),
'toAreaUnit'=>$_convertAreaStructChangeAreaUnit->getToAreaUnit())));
The code we then use is as simple as the following one:
/**
* Load autoload
*/
require_once dirname(__FILE__) . '/ConvertAreaAutoload.php';
/**
* Wsdl instanciation infos
*/
$wsdl = array();
$wsdl[ConvertAreaWsdlClass::WSDL_URL] = 'http://www.webservicex.net/ConvertArea.asmx?WSDL';
// instantiate the service class that contains the ChangeAreaUnit operation
$convertAreaServiceChange = new ConvertAreaServiceChange($wsdl);
// call the operation and display the result if it answers well
if($convertAreaServiceChange->ChangeAreaUnit(new ConvertAreaStructChangeAreaUnit(10,ConvertAreaEnumAreas::VALUE_SQUAREMETER,ConvertAreaEnumAreas::VALUE_SQUARECENTIMETER)))
echo "\r\n10m² equals to " . $convertAreaServiceChange->getResult()->getChangeAreaUnitResult() . "cm²\r\n";
else
print_r($convertAreaServiceChange->getLastError());
It should display : 10m² equals to 100000cm², that you can check on Google if you're not sure ;).
Now you can play with all the area units you want, enjoy.