RCT ExpressLync™ Version 3.5.2
Integration Guide
ii RCT ExpressLync 3.5.2 Integration Guide
Copyright © 2006 Marshall & Swift / Boeckh, LLC and its licensors.
All rights reserved. No part of this publication may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopy, recording, or storage in a retrieval system, without the prior written permission of MSB.
The information contained in this publication has been obtained from sources generally believed to be reliable. However, MARSHALL & SWIFT / BOECKH (MSB) MAKES NO REPRESENTATION OR WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, AS TO THE ACCURACY OR CONTENT OF THE INFORMATION, NOR DOES MSB WARRANT ITS MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Under no circumstances will MSB be liable for direct, indirect, special, consequential or incidental damages (including lost profits), even if MSB has been advised of the possibility of such damages, caused directly or indirectly by errors or omissions in the information.
California Canada New Jersey
915 Wilshire Blvd. 2700 Matheson Blvd East 505 Lawrence Square Blvd South
Suite 800 East Tower, Suite 703 Lawrenceville, NJ 08648
Los Angeles, CA 90017 Mississauga, Ontario L4W 4V9
(800) 421-8042
(213) 683-9000
800.661.3619
905.282.0110
800.420.9666
609.689.9366
Fax: (213) 683-9010 Fax 905.282.1991 Fax 609.689.6700
Texas Wisconsin
1828 E. Southeast Loop 323 2885 South Calhoun Rd.
Suite 202 P.O. Box 510291
Tyler, TX 75701 New Berlin, WI 53151-0291
888-337-9665
903-596-7018
800.285.1288
414.780.2800
Fax: 903-596-7670 Fax 414.780.0306
http://www.msbinfo.com/
Revision 07/18/2006
RCT ExpressLync 3.5.2 Integration Guide iii
Contents
Chapter 1 Introduction 1 Overview.................................................................................................................. 1
Introduction to ExpressLync.................................................................................. 1 Documentation Package ....................................................................................... 1
Getting Started.......................................................................................................... 2 Connectivity ....................................................................................................... 2 Security ............................................................................................................. 2
Building the Java Sample Code .................................................................................... 2 What’s New in This Version ......................................................................................... 4
Chapter 2 Web Services 5 Overview of Web Services ........................................................................................... 5
Introduction to ExpressLync Web Services .............................................................. 5 ValuationService ................................................................................................. 6 ValuationComboService........................................................................................ 7 ReferenceService ................................................................................................ 8
ValuationService Web Methods .................................................................................... 8 ApplyHazardInfoPolicyNumber............................................................................... 8 ApplyHazardInfoRecordID..................................................................................... 8 AssignPolicyNumberRecordId ................................................................................ 9 AssignValuationsUserToUser ................................................................................. 9 AssignValuationToUserPolicyNumber ...................................................................... 9 AssignValuationToUserRecordId............................................................................10 CalculateValuationPolicyNumber ...........................................................................10 CalculateValuationRecordId..................................................................................11 CreateValuation .................................................................................................11 DeleteValuationPolicyNumber...............................................................................11 DeleteValuationRecordId .....................................................................................12 ExportValuationPolicyNumber...............................................................................12 ExportValuationRecordId .....................................................................................12 ExportValuationVersionId ....................................................................................13 GetValuationHistoryPolicyNumber .........................................................................13 GetValuationHistoryRecordId ...............................................................................13 RenewValuationPolicyNumber ..............................................................................14 RenewValuationRecordId .....................................................................................14 SeamlessSelection..............................................................................................15 SetStatusCompletePolicyNumber ..........................................................................15 SetStatusCompleteRecordId ................................................................................15 StandardizeAddress ............................................................................................16 StandardizeAddressPolicyNumber .........................................................................16 StandardizeAddressRecordId................................................................................16 UpdateGeocodesPolicyNumber .............................................................................17 UpdateGeocodesRecordId ....................................................................................17 UpdateValuation.................................................................................................17 UpdateValuationWithoutAssumptions ....................................................................18
ValuationComboService Web Methods..........................................................................19 CreateValuationCombo........................................................................................19
Contents
iv RCT ExpressLync 3.5.2 Integration Guide
UpdateValuationCombo ...................................................................................... 19 Use Cases ............................................................................................................... 21 ReferenceService Web Methods .................................................................................. 24
GetHvAdvMaterialDetail ...................................................................................... 24 GetHvAdvMaterialDetailList ................................................................................. 24 GetMsMaterialDetail ........................................................................................... 24 GetMsMaterialDetailList ...................................................................................... 24 GetHvStdMaterialDetail....................................................................................... 25 GetHvStdMaterialDetailList .................................................................................. 25
Security .................................................................................................................. 26 Error Messages ........................................................................................................ 27
Introduction...................................................................................................... 27 Valuation Service Errors...................................................................................... 27 Validation Errors................................................................................................ 29
Chapter 3 Object Model 33 Overview ................................................................................................................ 33
Introduction...................................................................................................... 33 ExpressLync Classes ................................................................................................. 33 ExpressLync Enumerations ........................................................................................ 65
Chapter 4 Material Codes 79 Overview of Material Codes........................................................................................ 79
Introduction to Material Codes ............................................................................. 79 Material Reference List ....................................................................................... 79 Material Systems and Subsystems........................................................................ 79
Appendix A Backward Compatibility 81
Overview
RCT ExpressLync 3.5.2 Integration Guide 1
Chapter 1 Introduction
Overview
Introduction to ExpressLync MSB’s ExpressLync product adds significant capability to the Express platform. The ExpressLync product is a set of interactive Web services that you can use to programmatically invoke MSB Express application processing. You can now take advantage of all the value of the Express platform as an integrated extension of your existing business processes and IT systems.
Documentation Package The following items supplement this document:
• ExpressLyncObjectModel.zip contains the ExpressLync object model.
• ExpressLyncCodeSamples.zip contains Java sample code.
• The following files contain the material codes for the different house types:
• HV Std Entry Material Reference List.xml
• HV Adv Entry Material Reference List.xml
• MS Material Reference List.xml
• Material Reference List.xsl is a style sheet that lets you display the material reference list XML files in a tabular format.
Chapter 1 Introduction
2 RCT ExpressLync 3.5.2 Integration Guide
Getting Started
Connectivity To obtain the WSDL document and view Web methods
1. Open a browser and go to the interactive Web service URL provided by your MSB account representative. The basic page for the Web service describes the service methods that are available.
2. Click on the various Web methods to see the properly formed SOAP request and response.
3. Click on the Service Description link on the asmx page to retrieve the WSDL document for the Web service.
Examples Web service URL: https://{clientname}.msbexpress.net/rct/expresslync/valuationservice.asmx
To retrieve the WSDL for the Web Service: https://{clientname}.msbexpress.net/rct/expresslync/valuationservice.wsdl.aspx
If you have not yet purchased this product, please contact your account representative and ask about our ExpressLync demo environment.
Security The ExpressLync Web services use WS-Security UsernameToken to let the Web service consumer supply a Username Token and a password to authenticate their identity. WS-Security UsernameToken Profile is an industry standard for Web service authentication published by the Organization for the Advancement of Structured Information Standards (OASIS). The Web services use Web Services Enhancements 3.0, Microsoft’s implementation of WS-Security. The ExpressLync Web services will interoperate with other Web service platforms that have a WS-Security-compliant implementation.
Note: WS-Security UsernameToken is the recommended method for authentication but if your development platform does not provide an implementation of WS-Security, MSB can provide basic authentication with a domain account. Please contact your MSB account representative for more information.
For detailed information and examples of how to invoke ExpressLync Web services using different platforms and development tools, see the sample code provided with this document.
Building the Java Sample Code To build the Java sample code in ExpressLyncCodeSamples.zip
1. Ensure that you are using JDK 1.5.0 xx.
2. Install NetBeans 5.0 IDE (optional). NetBeans 5.0 is freeware. Download it from http://www.netbeans.info/downloads/download.php?type=5.0. If you do not use NetBeans, all the classpaths in folder C:\javaclass have to be set manually.
Note: NetBeans IDE 5.0 requires J2SE JDK, version 1.4.2 or higher.
Building the Java Sample Code
RCT ExpressLync 3.5.2 Integration Guide 3
3. Download the following dependent libraries into the C:\javaclass folder:
• Apache Axis v1.4 http://ws.apache.org/axis/java/install.html Apache Axis is an Open Source SOAP server and client.
• Apache WSS4J http://ws.apache.org/wss4j Apache WSS4J is an implementation of the OASIS Web Services Security (WS-Security) from OASIS Web Services Security TC.
• Apache Xalan http://xalan.apache.org The Xalan project is a collaborative software development project dedicated to providing robust, full-featured, commercial-quality, and freely available XSLT support on a wide variety of platforms.
• Apache Xerces v1.4 http://xerces.apache.org/ The Xerces Java Parser 1.4.4 supports the XML 1.0 recommendation and contains advanced parser functionality, such as support for the W3C’s XML Schema recommendation version 1.0, DOM Level 2 version 1.0, and SAX version 2, in addition to supporting the industry standard DOM Level 1 and SAX version 1 APIs.
• Bouncy Castle v1.32 http://www.bouncycastle.org/latest_releases.html The Bouncy Castle Crypto APIs consist of the following:
• A lightweight cryptography API in Java.
• A provider for the JCE and JCA.
• A clean room implementation of the JCE 1.2.1.
• Codec v1.3 http://jakarta.apache.org/commons/codec/ Commons Codec provides implementations of common encoders and decoders such as Base64, Hex, Phonetic and URLs.
• Commons Discovery v0.2 http://jakarta.apache.org/commons/discovery/ The Discovery component is about discovering, or finding, implementations for pluggable interfaces. It provides facilities instantiating classes in general and for lifecycle management of singleton (factory) classes.
• Commons HttpClient v3.0 http://jakarta.apache.org/commons/httpclient/ Designed for extension while providing robust support for the base HTTP protocol, the HttpClient component may be of interest to anyone building HTTP-aware client applications such as Web browsers, Web service clients, or systems that leverage or extend the HTTP protocol for distributed communication.
• JAX-RPC http://java.sun.com/xml/downloads/jaxrpc.html The Java API for XML-based RPC (JAX-RPC) enables Java technology developers to build Web applications and Web services incorporating XML-based RPC functionality according to the SOAP (Simple Object Access Protocol) 1.1 specification.
• OpenSAML http://www.opensaml.org/
Chapter 1 Introduction
4 RCT ExpressLync 3.5.2 Integration Guide
OpenSAML 1.1 is an Open Source security assertion markup language that implements the SAML 1.0 and 1.1 specifications. SAML, developed by the Security Services Technical Committee of OASIS, is an XML-based framework for communicating user authentication, entitlement, and attribute information. SAML allows business entities to make assertions regarding the identity, attributes, and entitlements of a subject (an entity that is often a human user) to other entities, such as a partner company or another enterprise application.
4. Restore the contents of the ExpressLyncCodeSample.zip file to the C:\JavaProjects folder.
5. To test the Web service interface, edit the following files. Replace the Web service URL, username, and password to those provided to you by your MSB account representative.
• C:\JavaProjects\JavaRCTSecurity\src\SampleClient\client_deploy.wsdd
• C:\JavaProjects\JavaRCTSecurity\src\SampleClient\ClientConstants.java
6. Compile and run the JavaRctProject. The NetBeans project (nbproject\project.xml) already incorporates the classpath to build and run the project.
What’s New in This Version With this version, support for mainstreet homes has been added to ExpressLync. ExpressLync now supports mainstreet and high value homes. Property characteristics for a high value home can be entered using either the standard or advanced entry method. In addition, several new Web methods have been added that work on all the supported house types. These methods let you retrieve valuation history, standardize property address, evaluate hazards for the property, etc. A new combo Web service has been added that provides methods to create/update valuations, calculate valuations, and export the valuations with one Web method call.
Overview of Web Services
RCT ExpressLync 3.5.2 Integration Guide 5
Chapter 2 Web Services
Overview of Web Services
Introduction to ExpressLync Web Services RCT ExpressLync consists of the following Web services:
• ValuationService
• ValuationComboService
• ReferenceService
Together, these services allow you to create and manage valuations for different types of homes.
About Valuations A valuation type is a broad, general category that represents the generic construction of a home. RCT ExpressLync currently supports main street and high value homes. To enter the property characteristics for high value homes, you can use either the standard or advanced entry method.
• Main Street Home—A traditional home built on-site.
• High Value Home (Standard Entry)—A high value home built on-site. If you use the standard entry method, you only need to add foundation/basement materials to the section/wing. All other materials should be added to the building. The system uses assumptions to apply the materials you add to the building to all sections of the house (main home and each wing).
• High Value Home (Advanced Entry)—A high value home built on-site. If you use the advanced entry method, the system does not use assumptions. You must enter materials for each section of the house (main home and each wing).
All the Web methods in the ValuationService and ValuationComboService Web service can be executed for all the supported house types.
If a valuation is being updated by a user via the RCT Express site or by another process, most valuation commands will fail.
Some commands will succeed even when the valuation is being used by the RCT Express site. These commands include AssignValuationsUserToUser, AssignValuationToUserPolicyNumber, AssignValuationToUserRecordId, RenewValuationPolicyNumber, RenewValuationRecordId, GetValuationHistoryPolicyNumber, GetValuationHistoryRecordId and ExportValuationVersionId.
Some commands do not operate on a specific valuation and therefore can be processed anytime. These commands include StandardizeAddress and SeamlessSelection.
RCT Assumptions Assumptions are used by the RCT system to let you enter the property characteristics that you know and the system assumes the other materials used in the home based on the entered
Chapter 2 Web Services
6 RCT ExpressLync 3.5.2 Integration Guide
property characteristics. The RCT system applies material assumptions (if all the required parameters are provided) when a valuation is created or updated. Materials that can be used in the construction of a home are grouped into categories called material systems. Exterior walls, attached structures, and heating and cooling are examples of material systems. Assumptions are added by material system. If you add one or more materials for a material system, you must add all other materials for that material system. The RCT assumption engine will not apply assumptions to a material system when some materials have already been added to it.
Notes:
When using the high value standard entry method, only foundation/basement materials need to be added to the section/wing. All other components are added to the building. The system uses assumptions to apply the values you enter for the building to all sections (main home and any wings) of the house.
No assumptions are loaded for the high value advanced entry method.
Available Web Services You can access the following Web services:
• The ValuationService is available at the following location: https://{clientname}.msbexpress.net/rct/expresslync/ValuationService.asmx
• The ValuationComboService is available at the following location: https://{clientname}.msbexpress.net/rct/expresslync/ValuationComboService.asmx
• The ValuationService and the ValuationComboService share their WSDL document. Retrieve the WSDL for both of the Web services from the following location: https://{clientname}.msbexpress.net/rct/expresslync/ValuationService.wsdl.aspx
• The ReferenceService is available at the following location: https://{clientname}.msbexpress.net/rct/expresslync/ReferenceService.asmx
• Retrieve the WSDL for the ReferenceService from the following location: https://{clientname}.msbexpress.net/rct/expresslync/ReferenceService.wsdl.aspx
Note: Replace {clientname} with your company name.
ValuationService The ValuationService provides Web methods to create, manage, and export valuations. For detailed descriptions, see ValuationService Web Methods.
The ValuationService includes the following Web methods:
• ApplyHazardInfoPolicyNumber
• ApplyHazardInfoRecordID
• AssignPolicyNumberRecordId
• AssignValuationsUserToUser
• AssignValuationToUserPolicyNumber
• AssignValuationToUserRecordId
• CalculateValuationPolicyNumber
Overview of Web Services
RCT ExpressLync 3.5.2 Integration Guide 7
• CalculateValuationRecordId
• CreateValuation
• DeleteValuationPolicyNumber
• DeleteValuationRecordId
• ExportValuationPolicyNumber
• ExportValuationRecordId
• ExportValuationVersionId
• GetValuationHistoryPolicyNumber
• GetValuationHistoryRecordId
• RenewValuationPolicyNumber
• RenewValuationRecordId
• Seamless Selection
• SetStatusCompletePolicyNumber
• SetStatusCompleteRecordId
• StandardizeAddress
• StandardizeAddressPolicyNumber
• StandardizeAddressRecordId
• UpdateGeocodesPolicyNumber
• UpdateGeocodesRecordId
• UpdateValuation
• UpdateValuationWithoutAssumptions
ValuationComboService The ValuationComboService provides Web methods that allow you to perform multiple actions using a single Web method call. You can create/update valuations and optionally calculate, and/or export valuations. For detailed descriptions, see ValuationComboService Web Methods.
The ValuationComboService includes the following Web methods:
• CreateValuationCombo
• UpdateValuationCombo
Chapter 2 Web Services
8 RCT ExpressLync 3.5.2 Integration Guide
ReferenceService The ReferenceService provides Web methods to retrieve material codes for different valuation types. These material codes are also provided with this documentation package. For more information, see Material Codes. For detailed descriptions, see ReferenceService Web Methods.
The ReferenceService includes the following Web methods:
• GetHvAdvMaterialDetail
• GetHvAdvMaterialDetailList
• GetMsMaterialDetail
• GetMsMaterialDetailList
• GetHvStdMaterialDetail
• GetHvStdMaterialDetailList
ValuationService Web Methods
ApplyHazardInfoPolicyNumber Returns: Object that contains valuation data.
Data Type: ValuationAggregate
Description: The ApplyHazardInfoPolicyNumber method evaluates the hazards for the valuation. Only the hazard types that have been configured on your RCT Express site can be evaluated. The hazards are evaluated using the geocoded value for the valuation. The geocoded value can be set by standardizing the property address or by calling the UpdateGeocodesPolicyNumber or UpdateGeocodesRecordId Web methods. If the HazardCommands parameter is not provided, the system evaluates the default hazards that have been configured for your RCT Express site.
Parameters:
Data Type Description
PolicyNumber String The policy number for an existing valuation.
HazardCommands Array The type of hazard that needs to be evaluated. An array that can include Brushfire, DistanceToCoast, Earthquake, PremiumTax, Sinkhole, or Windpool.
ApplyHazardInfoRecordID Returns: Object that contains valuation data.
Data Type: ValuationAggregate
Description: The ApplyHazardInfoPolicyNumber method evaluates the hazards for the valuation. Only the hazard types that have been configured on your RCT Express site can be evaluated. The hazards are evaluated using the geocoded value for the valuation. The geocoded value can be set by standardizing the property address or by calling the UpdateGeocodesPolicyNumber or UpdateGeocodesRecordId Web methods. If the HazardCommands parameter is not provided, the system evaluates the default hazards that have been configured for your RCT Express site.
ValuationService Web Methods
RCT ExpressLync 3.5.2 Integration Guide 9
Parameters:
Data Type Description
RecordId Integer The record ID for an existing valuation.
HazardCommands Array The type of hazard that needs to be evaluated. An array that can include Brushfire, DistanceToCoast, Earthquake, PremiumTax, Sinkhole, or Windpool.
AssignPolicyNumberRecordId Returns: Object that contains attributes that uniquely identify a valuation.
Data Type: ValuationIdentifier
Description: The AssignPolicyNumberRecordId method replaces the policy number of an existing valuation (specified by record ID) with the value of the NewPolicyNumber parameter. If the existing valuation is an estimate, the system will convert the type of the valuation from an estimate (EST) to a policy (POL).
Parameters:
Data Type Description
RecordId Integer The unique identifier that identifies the complete set of all versions of a valuation.
NewPolicyNumber String A valid policy number that will replace the existing policy number.
AssignValuationsUserToUser Returns: True
Data Type: Bool
Description: The AssignValuationsUserToUser method replaces the assigned user for all valuations assigned to a user with a login value of OldUserLogin to a user with a login value of NewUserLogin. Use this method to assign all valuations from one user to another.
Parameters:
Data Type Description
OldUserLogin String A user login for the user that you want to assign all the valuations from.
NewUserLogin String A user login for the user that you want to assign all the valuations to.
AssignValuationToUserPolicyNumber Returns: True
Data Type: Bool
Description: The AssignValuationToUserPolicyNumber method replaces the current user assigned to an existing valuation (specified by policy number) with the value of the UserLogin parameter. Use this method to assign a different user to an existing policy.
Chapter 2 Web Services
10 RCT ExpressLync 3.5.2 Integration Guide
Parameters:
Data Type Description
PolicyNumber String The policy number of an existing valuation.
UserLogin String The user login for the user that you want to assign the policy to.
AssignValuationToUserRecordId Returns: True
Data Type: Bool
Description: The AssignValuationToUserRecordId method replaces the current user assigned to an existing valuation (specified by record ID) with the value of the UserLogin parameter. Use this method to assign a different user to an existing policy.
Parameters:
Data Type Description
RecordId Integer The unique identifier that identifies the complete set of all versions of a valuation.
UserLogin String A user login for the user that you want to assign the valuation to.
CalculateValuationPolicyNumber Returns: Object that contains attributes that uniquely identify a valuation.
Data Type: ValuationIdentifier
Description: The CalculateValuationPolicyNumber method calculates the valuation totals for an existing valuation (specified by policy number) if all required valuation data exists.
The method checks the client’s specific material rules prior to performing the calculation. If the material rules fail, the calculation is not performed and an exception is thrown.
The policy status is set to “In_Preparation.”
Parameters:
Data Type Description
PolicyNumber String The policy number for an existing valuation.
ValuationService Web Methods
RCT ExpressLync 3.5.2 Integration Guide 11
CalculateValuationRecordId Returns: Object that contains attributes that uniquely identify a valuation.
Data Type: ValuationIdentifier
Description: The CalculateValuationRecordId method calculates the valuation totals for an existing valuation (specified by record ID) if all required valuation data exists.
The method checks the client’s specific material rules prior to performing the calculation. If the material rules fail, the calculation is not performed and an exception is thrown.
The policy status is set to “In_Preparation.”
Parameters:
Data Type Description
RecordId Integer The unique identifier that identifies the complete set of all versions of a valuation.
CreateValuation Returns: Object that contains attributes that uniquely identify a valuation.
Data Type: ValuationIdentifier
Description: The CreateValuation method creates a new valuation from the valuation data provided. If the policy number has not been explicitly set in the ValuationIn object, the system defaults the policy number to ESTIMATE-xxxx (where xxxx is a unique identifier for the valuation) and sets the valuation type to estimate (EST). The policy status is set to "In_Preparation."
The method loads the default material assumptions based on the valuation type.
Parameters:
Data Type Description
ValuationIn ValuationAggregate The valuation object that contains all the data to create the valuation.
The valuation aggregate can hold valuation objects of different types. Use either MainStreetValuation, HighValueStandardValuation, or HighValueAdvancedValuation depending on the valuation type for the home.
DeleteValuationPolicyNumber Returns: True
Data Type: Bool
Description: The DeleteValuationPolicyNumber method deletes an existing valuation specified by policy number.
Parameters:
Data Type Description
PolicyNumber String The policy number for an existing valuation.
Chapter 2 Web Services
12 RCT ExpressLync 3.5.2 Integration Guide
DeleteValuationRecordId Returns: True
Data Type: Bool
Description: The DeleteValuationRecordId method deletes an existing valuation specified by record ID.
Parameters:
Data Type Description
RecordId Integer The unique identifier that identifies the complete set of all versions of a valuation.
ExportValuationPolicyNumber Returns: Object that contains valuation data and calculated results.
Data Type: ValuationAggregate
Description: The ExportValuationVersionId method returns the entire set of data associated with an existing valuation in the valuation object (specified by policy number). The valuation object returned depends on the type of valuation being exported. Example: for a high value home using the standard method, the ValuationAggregate contains the HighValueStandardValuation object. To retrieve the appropriate valuation object, check the type of ValuationAggregate.Item and then cast ValuationAggregate.Item to that type.
Parameters:
Data Type Description
PolicyNumber String The policy number of the valuation that will be exported.
ExportValuationRecordId Returns: Object that contains valuation data and calculated results.
Data Type: ValuationAggregate
Description: The ExportValuationVersionId method returns the entire set of data associated with an existing valuation in the valuation object (specified by record ID). The valuation object returned depends on the type of valuation being exported. Example: for a high value home using the standard method, the ValuationAggregate contains the HighValueStandardValuation object. To retrieve the appropriate valuation object, check the type of ValuationAggregate.Item and then cast ValuationAggregate.Item to that type.
Parameters:
Data Type Description
RecordId Integer The unique identifier that identifies the complete set of all versions of a valuation.
ValuationService Web Methods
RCT ExpressLync 3.5.2 Integration Guide 13
ExportValuationVersionId Returns: Object that contains valuation data and calculated results.
Data Type: ValuationAggregate
Description: The ExportValuationVersionId method returns the entire set of data associated with an existing valuation in the valuation object (specified by version ID). The valuation object returned depends on the type of valuation being exported. Example: for a high value home using the standard method, the ValuationAggregate.Item member contains the HighValueStandardValuation object. To retrieve the appropriate valuation object, check the type of ValuationAggregate.Item and then cast ValuationAggregate.Item to that type.
Parameters:
Data Type Description
VersionId Integer A valuation may go through many iterations or versions. The system stores information about them so the user can refer back to earlier versions. The version ID is the unique identifier for an existing version of a valuation that needs to be exported.
GetValuationHistoryPolicyNumber Returns: List of objects that contain pertinent information for a valuation version.
Data Type: ValuationHistory
Description: A valuation may go through many iterations or versions. The GetValuationHistoryPolicyNumber method returns all the prior versions for a valuation (specified by policy number).
Parameters:
Data Type Description
PolicyNumber String The policy number of the valuation whose history needs to be retrieved.
GetValuationHistoryRecordId Returns: List of objects that contain pertinent information for a valuation version.
Data Type: ValuationHistory
Description: A valuation may go through many iterations or versions. The GetValuationHistoryPolicyNumber method returns all the prior versions for a valuation (specified by record ID).
Parameters:
Data Type Description
RecordId Integer The record ID of the valuation whose history needs to be retrieved.
Chapter 2 Web Services
14 RCT ExpressLync 3.5.2 Integration Guide
RenewValuationPolicyNumber Returns: Valuation data and calculated results for the renewed version and the previous
complete version.
Data Type: ValuationAggregateList
Description: The RenewValuationPolicyNumber method creates a new valuation version from the last complete version of the valuation. It calculates this newer version with the latest cost data from MSB. This newer version then becomes the latest complete version. If an “In_Preparation” version precedes the “Complete” version, then the “In_Preparation” version’s status will be changed to “Superseded.”
Parameters:
Data Type Description
PolicyNumber String The policy number of the valuation that needs to be renewed.
EffectiveDate Date Date when the valuation is put into effect.
RenewalDate Date Date when the valuation is up for renewal.
RenewValuationRecordId Returns: Valuation data and calculated results for the renewed version and the previous
complete version.
Data Type: ValuationAggregateList
Description: The RenewValuationPolicyNumber method creates a new valuation version from the last complete version of the valuation. The system calculates the newer version using the latest cost data from MSB. This newer version then becomes the latest complete version. If a version with the status “In_Preparation” precedes the “Complete” version, then the “In_Preparation” version’s status will be changed to “Superseded.”
Parameters:
Data Type Description
RecordId Integer The record ID of the valuation that needs to be renewed.
EffectiveDate Date Date when the valuation is put into effect.
RenewalDate Date Date when the valuation is up for renewal.
ValuationService Web Methods
RCT ExpressLync 3.5.2 Integration Guide 15
SeamlessSelection Returns: The house type for the valuation.
Data Type: ValuationType
Description: The SeamlessSelection method tests the data passed to the method against a set of criteria (configured on your RCT Express site) to determine the appropriate house type for the valuation. This method should be called prior to calling the CreateValuation or UpdateValuation Web methods to decide if the home should be entered as a mainstreet or high value valuation.
This method does not update an existing valuation. The information returned by the method is not saved in the database.
Parameters:
Data Type Description
ZipOrPostalCode String The zip or postal code where the home is located.
YearBuilt Short The year the home was built.
LivingArea Int The total living area for the main building and all sections or wings in the home.
EstimatedMarketValue Int The estimated market value for the home in dollars.
ElaborateRoof Bool Set to true if the home has an elaborate roof.
MoreThan4CarGarage Bool Set to true if the home has more than a 4 car garage.
ArchitectDesignedKitchenOrBath Bool Set to true if the home has one or more architect-designed kitchens or baths.
SetStatusCompletePolicyNumber Returns: True
Data Type: Bool
Description: The SetStatusCompletePolicyNumber method sets the policy status of the valuation (specified by policy number) to complete.
Parameters:
Data Type Description
PolicyNumber String The policy number of the valuation whose status needs to be set to Complete.
SetStatusCompleteRecordId Returns: True
Data Type: Bool
Description: The SetStatusCompletePolicyNumber method sets the policy status of the valuation (specified by record ID) to complete.
Parameters:
Data Type Description
RecordId Integer The record ID of the valuation whose status needs to be set to Complete.
Chapter 2 Web Services
16 RCT ExpressLync 3.5.2 Integration Guide
StandardizeAddress Returns: List of standardized addresses.
Data Type: StandardizedAddressList
Description: List of all standardized addresses that match the input address. A standardized address is standardized to USPS specifications, geocoded, and assigned a latitude and longitude.
This method does not update an existing valuation. The information returned by the method is not saved in the database.
Parameters:
Data Type Description
Address Address Address that needs to be standardized.
StandardizeAddressPolicyNumber Returns: Object that contains valuation data and calculated results.
Data Type: ValuationAggregate
Description: The StandardizeAddressPolicyNumber method standardizes the property address for a valuation (specified by policy number) if a single matching standardized address is found. A standardized address is standardized to USPS specifications, geocoded, and assigned a latitude and longitude.
Parameters:
Data Type Description
PolicyNumber String The policy number of the valuation whose property address needs to be standardized.
StandardizeAddressRecordId Returns: Object that contains valuation data and calculated results.
Data Type: ValuationAggregate
Description: The StandardizeAddressRecordId method standardizes the property address for a valuation (specified by record ID) if a single matching standardized address is found. A standardized address is standardized to USPS specifications, geocoded, and assigned a latitude and longitude.
Parameters:
Data Type Description
RecordId Integer The record ID of the valuation whose property address needs to be standardized.
ValuationService Web Methods
RCT ExpressLync 3.5.2 Integration Guide 17
UpdateGeocodesPolicyNumber Returns: Object that contains attributes that uniquely identify a valuation.
Data Type: ValuationIdentifier
Description: The UpdateGeocodesPolicyNumber method updates the latitude/longitude coordinates for the property address of a valuation (specified by policy number). An exception is thrown if the latitude/longitude pair is outside the range for the United States.
Parameters:
Data Type Description
PolicyNumber String The policy number of the valuation whose geocodes need to be updated.
Latitude Decimal The angular distance north or south from the earth's equator to the property address.
Longitude Decimal The angular distance east or west from the earth’s zero meridian to the property address.
UpdateGeocodesRecordId Returns: Object that contains attributes that uniquely identify a valuation.
Data Type: ValuationIdentifier
Description: The UpdateGeocodesRecordId method updates the latitude/longitude coordinates for the property address of a valuation (specified by record ID).
An exception is thrown if the latitude/longitude pair is outside the range for the United States.
Parameters:
Data Type Description
RecordId Integer The record ID of the valuation whose geocodes need to be updated.
Latitude Decimal The angular distance north or south from the earth's equator to the property address.
Longitude Decimal The angular distance east or west from the earth’s zero meridian to the property address.
UpdateValuation Returns: Object that contains attributes that uniquely identify a valuation.
Data Type: ValuationIdentifier
Description: The UpdateValuation method updates an existing valuation with the valuation data supplied. You need to fill the entire ValuationIn object with the data that needs to be updated. This method effectively overwrites or replaces any existing information for the valuation.
If the policy status of the latest version of the valuation is "In_Preparation," the method will overwrite the latest version with the valuation data submitted. If the policy status of the latest version of the valuation is "Complete," a new version will be created with the valuation data submitted. This new version will have a status of “In_Preparation” and will be marked as the latest version of the valuation.
This method can also be used to update the house type of a mainstreet home to high value if it is determined by calling the SeamlessSelection method that the
Chapter 2 Web Services
18 RCT ExpressLync 3.5.2 Integration Guide
home now qualifies to be a high value home. To update the house type, create a new valuation object corresponding to the chosen house type, e.g., HighValueStandardValuation or HighValueAdvancedValuation. Populate this object with the property characteristic from the main street home. Calling the method with this new object will update the house type appropriately.
This method will also load the default MSB assumptions.
Parameters:
Data Type Description
ValuationIn ValuationAggregate The valuation object that contains all the data to update the valuation.
The valuation aggregate can hold valuation objects of different types. Use either MainStreetValuation, HighValueStandardValuation, or HighValueAdvancedValuation depending on the valuation type for the home.
UpdateValuationWithoutAssumptions Returns: Object that contains attributes that uniquely identify a valuation.
Data Type: ValuationIdentifier
Description: The UpdateValuationWithoutAssumptions method updates an existing valuation with the valuation data supplied. You need to fill the entire ValuationIn object with the data that needs to be updated. This method effectively overwrites or replaces any existing information for the valuation.
If the policy status of the latest version of the valuation is "In_Preparation," the method will overwrite the latest version with the valuation data submitted. If the policy status of the latest version of the valuation is "Complete," a new version will be created with the valuation data submitted. This new version will have a status of “In_Preparation” and will be marked as the latest version of the valuation.
The method does not load default material assumptions for any house type. Use this method to update a valuation when you do not want the RCT system to add additional materials to the material systems within the valuation.
This method can also be used to update the house type of a mainstreet home to high value if it is determined by calling the SeamlessSelection method that the home now qualifies to be a high value home. To update the house type, create a new Valuation object corresponding to the chosen house type, e.g., HighValueStandardValuation or HighValueAdvancedValuation. Populate this object with the property characteristic from the main street home. Calling the method with this new object will update the house type appropriately.
Parameters:
Data Type Description
ValuationIn ValuationAggregate The valuation object that contains all the data to update the valuation.
The valuation aggregate can hold valuation objects of different types. Use either MainStreetValuation, HighValueStandardValuation, or HighValueAdvancedValuation depending on the valuation type for the home.
ValuationComboService Web Methods
RCT ExpressLync 3.5.2 Integration Guide 19
ValuationComboService Web Methods
CreateValuationCombo Returns: Valuation data and calculated results.
Data Type: ComboResult
Description: The CreateValuationCombo method allows you to create valuations and optionally calculate and export valuations.
If the ValuationIn object does not include all the required data, the valuation cannot be calculated. In this case, the valuation is not created and the method throws an exception.
If the policy number has not been explicitly set in the ValuationIn object, the system defaults the policy number to ESTIMATE-xxxx (where xxxx is a unique identifier for the valuation) and sets the valuation type to estimate (EST). The valuation object returned depends on the type of valuation being exported. The policy status is set to "Complete."
Parameters:
Data Type Description
ValuationIn Valuation Aggregate
The valuation object that contains all the required data to create the valuation.
The valuation aggregate can hold valuation objects of different types. Use the valuation class that corresponds to the type of house being valued. For example, use MainStreetValuation for a main street home and HighValueStandardValuation to value a high value home using the standard entry method.
ComboOptionList ComboOptionList List of ComboOption enums that lets the user specify if calculating valuation totals and exporting the valuation should happen during the execution of this method.
UpdateValuationCombo Returns: Valuation data and calculated results.
Data Type: ComboResult
Description: The UpdateValuationCombo method allows you to update valuations and optionally calculate and export valuations. You need to fill the entire ValuationIn object with the data that needs to be updated. This method effectively overwrites or replaces any existing information for the valuation.
If the ValuationIn object does not include all the required data, the valuation cannot be calculated. In this case, the valuation is not updated and the method throws an exception.
If the policy status of the latest version of the valuation is "In_Preparation," the method will overwrite the latest version with the valuation data submitted. If the policy status of the latest version of the valuation is "Complete," a new version will be created with the valuation data submitted. This new version will have a status of “In_Preparation” and will be marked as the latest version of the valuation.
This method can also be used to update the house type of a mainstreet home to high value if it is determined by calling the SeamlessSelection method that the home now qualifies to be a high value home. To update the house type, create a new valuation object corresponding to the chosen house type, e.g., HighValueStandardValuation or HighValueAdvancedValuation. Populate this object
Chapter 2 Web Services
20 RCT ExpressLync 3.5.2 Integration Guide
with the property characteristic from the main street home. Calling the method with this new object will update the house type appropriately.
The valuation object returned depends on the type of valuation being exported.
Parameters:
Data Type Description
Valuation Valuation Aggregate
The valuation object that contains all the data to create the valuation.
The valuation aggregate can hold valuation objects of different types. Use the valuation class that corresponds to the type of house being valued. For example, use MainStreetValuation for a main street home and HighValueStandardValuation to value a high value home using the standard entry method.
ComboOptionList ComboOptionList List of ComboOption enums that lets the user specify if calculating valuation totals and exporting the valuation should happen during the execution of this method.
Use Cases
RCT ExpressLync 3.5.2 Integration Guide 21
Use Cases The following table lists use cases.
If you want to… Do this…
Create a valuation for new business,
1. Call the CreateValuationRecordId or CreateValuationPolicyNumber Web method with all the required valuation data. Assumptions are applied if all the required data is provided. The valuation is created as an estimate with a policy status of ‘In_Preparation’.
2. Call the CalculateRecordId or CalculatePolicyNumber to calculate the valuation totals for the home.
3. Call the ExportValuationRecordId or ExportValuationPolicyNumber to export the valuation data and calculated results. The calculated results can be used to provide a quote to the user.
4. If the quote turns into new business, call the AssignPolicyNumberPolicyNumber or AssignPolicyNumberRecordId method to assign a policy number to the estimate.
5. Call the SetStatusCompletePolicyNumber or SetStatusCompleteRecordId method to set the valuation version to complete.
Create a valuation for new business. Use Seamless Selection to determine the appropriate house type for the valuation.
1. Call the SeamlessSelection Web method to determine the appropriate house type for the valuation. If the Web method determines that the appropriate house type is mainstreet, create a MainstreetValuation object. If the recommended house type is high value, create a HighValueStandardValuation or HighValueAdvancedValuation object. Populate this object with all the available valuation data.
2. Call the CreateValuationRecordId or CreateValuationPolicyNumber Web method with the valuation object created in the previous step. If all the required data is provided, assumptions are applied. The valuation is created as an estimate with a policy status of ‘In_Preparation’.
3. Call the CalculateRecordId or CalculatePolicyNumber to calculate the valuation totals for the home.
4. Call the ExportValuationRecordId or ExportValuationPolicyNumber to export the valuation data and calculated results. The calculated results can be used to provide a quote to the user.
5. If the quote turns into new business, call the AssignPolicyNumberPolicyNumber or AssignPolicyNumberRecordId method to assign a policy number to the estimate.
6. Call the SetStatusCompletePolicyNumber or SetStatusCompleteRecordId to set the valuation version to complete.
Chapter 2 Web Services
22 RCT ExpressLync 3.5.2 Integration Guide
If you want to… Do this…
Create a valuation for new business. Use Seamless Selection to determine the appropriate house type for the valuation. Evaluate hazards for the valuation property.
1. Call the CreateValuationRecordId or CreateValuationPolicyNumber Web method with partial valuation data (property address but no property characteristics) using the MainstreetValuation object. The valuation is created as an estimate with a policy status of ‘In_Preparation’.
2. Call the StandardizeAddressPolicyNumber or StandardizeAddressrecordId Web method to standardize the property address and assign a latitude/longitude to the valuation.
3. Call the ApplyHazardInfoPolicyNumber or ApplyHazardInfoRecordId method to retrieve the hazards for the property. If the hazard results are acceptable, proceed to the next step.
4. Call the SeamlessSelection Web method to determine the appropriate house type for the valuation. If the Web method determines that the appropriate house type is mainstreet, update the valuation object created in step 1 with the available property characteristics. If the recommended house type is high value, create a new HighValueStandardValuation or HighValueAdvancedValuation object. Populate this object with the partial valuation data from the MainstreetValuation object and the available property characteristics.
5. Call the UpdateValuationRecordId or UpdateValuationPolicyNumber Web method with the valuation object created in the previous step. If all the required data is provided, assumptions are applied.
6. Call the CalculateRecordId or CalculatePolicyNumber to calculate the valuation totals for the home.
7. Call the ExportValuationRecordId or ExportValuationPolicyNumber to export the valuation data and calculated results. The calculated results can be used to provide a quote to the user.
8. If the quote turns into new business, call the AssignPolicyNumberPolicyNumber or AssignPolicyNumberRecordId method to assign a policy number to the estimate.
9. Call the SetStatusCompletePolicyNumber or SetStatusCompleteRecordId to set the valuation version to complete.
Maintain/update an existing valuation,
1. Call the ExportValuationRecordId or ExportValuationPolicyNumber to export the valuation data for the latest valuation version.
2. Make necessary changes to the valuation data retrieved from the export method. Call the UpdateValuationRecordId or UpdateValuationPolicyNumber Web method with the updated valuation data. If all the required data is provided, assumptions are applied.
3. Call the CalculateRecordId or CalculatePolicyNumber to recalculate the valuation totals for the home.
4. Call the ExportValuationRecordId or ExportValuationPolicyNumber to export the valuation data and calculated results. Check out the valuation totals for the updated policy.
5. Call the SetStatusCompletePolicyNumber or SetStatusCompleteRecordId to set the valuation version to complete.
Use Cases
RCT ExpressLync 3.5.2 Integration Guide 23
If you want to… Do this…
Maintain/update an existing valuation. Verify the house type by reapplying seamless selection.
1. Call the ExportValuationRecordId or ExportValuationPolicyNumber to export the valuation data for the latest valuation version.
2. Call the SeamlessSelection Web method passing in all the updated property data to determine if the appropriate house type has changed. If the Web method concludes that the house type has changed, create the corresponding valuation object. Copy the valuation data retrieved from the previous step into this newly created object.
3. Make necessary changes to the valuation object retrieved from the previous step. Call the UpdateValuationRecordId or UpdateValuationPolicyNumber Web method with the updated valuation data. If all the required data is provided, assumptions are applied. The method automatically updates the house type if the valuation object provided to it does not match the house type for the existing valuation.
4. Call the CalculateRecordId or CalculatePolicyNumber to recalculate the valuation totals for the home.
5. Call the ExportValuationRecordId or ExportValuationPolicyNumber to export the valuation data and calculated results. Check out the valuation totals for the updated policy.
6. Call the SetStatusCompletePolicyNumber or SetStatusCompleteRecordId to set the valuation version to complete.
Renew an existing valuation using the latest cost data from MSB,
• Call the RenewValuationPolicyNumber or RenewValuationRecordId to recompute the valuation totals for the home. The method returns the totals for the renewed version and the prior complete version. Compare the total variance for the two versions. The policy status is set to complete for the renewed version.
Assign policy numbers to several existing valuations,
• Call the AssignPolicyNumberRecordId or AssignPolicyNumberPolicyNumber Web method iteratively for each of the valuations that need to be assigned policy numbers.
Renew several existing valuations,
• Call the RenewValuationRecordId or RenewValuationPolicyNumber Web method iteratively for each of the valuations that need to be renewed.
Chapter 2 Web Services
24 RCT ExpressLync 3.5.2 Integration Guide
ReferenceService Web Methods
GetHvAdvMaterialDetail Returns: Detailed material information for the specified material ID.
Data Type: MaterialSystem
Description: The GetHvAdvMaterialDetail method returns attributes for the specified material ID: material name, min. value, max. value, and unit of entry.
Parameters:
Data Type Description
MaterialIdIn String Identifies the component or material.
GetHvAdvMaterialDetailList Returns: Detailed material information.
Data Type: MaterialSystemList
Description: The GetHvAdvMaterialDetailList method returns a list of materials grouped by material systems and material subsystems. These materials can be used in a high value home that uses the advanced entry method.
Parameters:
Data Type Description
NoInput N/A N/A
GetMsMaterialDetail Returns: Detailed material information for the specified material ID.
Data Type: MaterialSystem
Description: The GetMsMaterialDetail method returns attributes for the specified material ID: material name, min. value, max. value, and unit of entry.
Parameters:
Data Type Description
MaterialIdIn String Identifies the component or material.
GetMsMaterialDetailList Returns: Detailed material information.
Data Type: MaterialSystemList
Description: The GetMsMaterialDetailList method returns a list of materials grouped by material systems and material subsystems. These materials can be used in a main street home.
Parameters:
Data Type Description
NoInput N/A N/A
ReferenceService Web Methods
RCT ExpressLync 3.5.2 Integration Guide 25
GetHvStdMaterialDetail Returns: Detailed material information for the specified material ID.
Data Type: MaterialSystem
Description: The GetHvStdMaterialDetail method returns attributes for the specified material ID: material name, min. value, max. value, and unit of entry.
Parameters:
Data Type Description
MaterialIdIn String Identifies the component or material.
GetHvStdMaterialDetailList Returns: Detailed information for all materials.
Data Type: MaterialSystemList
Description: The GetHvStdMaterialDetailList method returns a list of materials grouped by material systems and material subsystems. These materials can be used in a high value home that uses the standard entry method.
Parameters:
Data Type Description
NoInput N/A N/A
Chapter 2 Web Services
26 RCT ExpressLync 3.5.2 Integration Guide
Security The ExpressLync Web services require you to use the WS-Security UsernameToken standard to pass credentials for authentication. Your development platform will need an implementation of WS-Security to authenticate against the Web services. Microsoft’s Web Service Enhancements 3.0 and Apache’s Axis WSS4J library provide an implementation of WS-Security UsernameToken.
The client application that invokes the Web methods should place the username provided to you by your MSB account representative in a WS-Security UsernameToken element. The password should be set in the WS-Security Password element and the element’s type attribute should be set to "PasswordDigest." This token should be added to the SOAP request for the Web method. If the credentials are valid, the client application is granted access to the Web method; otherwise, a SecurityFault exception is thrown.
Note: WS-Security is the recommended method for authentication, but if your development platform does not provide an implementation of WS-Security, MSB can provide basic authentication with a domain account. Please contact your MSB account representative for more information.
The following C#.Net code illustrates how to add the UsernameToken to the SOAP message:
string user=""; string password=""; string url="http://demo.msbexpress.net/rct35/ExpressLync/ValuationService.asmx"; // Create an instance of the web service proxy ExpressLync.ValuationServiceWse service = new ExpressLync.ValuationServiceWse(); //set the URL service.Url = url; // Create the Username token UsernameToken token = new UsernameToken(user, password, PasswordOption.SendHashed); // Add the token to the request context service.RequestSoapContext.Security.Tokens.Add(token); // Set the TTL to one minute to prevent reply attacks service.RequestSoapContext.Security.Timestamp.TtlInSeconds = 60;
Error Messages
RCT ExpressLync 3.5.2 Integration Guide 27
Error Messages
Introduction The Web services communicate all errors to your application via a SOAP fault element within the SOAP response message. This SOAP fault element is typically known as a SOAPException in development environments that use Java or .NET. The SoapException contains an error message that explains the reason for the exception. Some Web methods return warnings as part of their response. Warnings are less severe and the method continues execution despite the warning.
Valuation Service Errors This section lists the possible errors returned from the ValuationService methods.
CreateValuation Type Description
Errors PolicyNum must not be specified when creating EST type valuations
User lacks permission to create this valuation
Invalid Login
Could not import valuation because there were critical errors: {error list}
Could not import valuation because there were errors: {error list}
UpdateValuation Type Description
Errors Could not update {PolicyNum}: policy number not found
User lacks edit permission
User lacks create permission
Could not update valuation because there were critical errors: {error list}
Could not update valuation because there were errors: {error list}
ExportValuationRecordId ExportValuationPolicyNumber ExportValuationVersionId Type Description
Errors Valuation does not exist
CalculateValuationRecordId CalculateValuationPolicyNumber Type Description
Errors Failed to calculate {detailed error message if any}
AssignPolicyNumberRecordId AssignPolicyNumberPolicyNumber Type Description
Errors Policy not found
Invalid login
Chapter 2 Web Services
28 RCT ExpressLync 3.5.2 Integration Guide
Type Description
Valuation not found
Valuation deleted
Valuation is locked
Valuation version not found
Valuation version is not editable (STATUSID={0})
User lacks edit permission
New policy number cannot be empty
New policy number cannot contain special characters
New and old policy numbers are same
New policy number cannot begin with the word estimate
App not configured to change policy number
New policy number is not in the required format or is invalid
New policy number must be in uppercase
Assigning Policy Number failed {detailed error message if any}
DeleteValuationRecordId DeleteValuationPolicyNumber Type Description
Errors Invalid policy ID
Invalid login
Valuation not found
User lacks delete permission
Valuation is locked
AssignValuationToUserRecordId AssignValuationToUserPolicyNumber Type Description
Errors Reassigner does not exist in system
User does not exist in system
User {0} does not have permission to reassign ownership of policies
Valuation not found
User {0} does not have permission to have policies reassigned away from him/her
Reassignment destination user not found
UserId {0} not found
Valuation is locked
Reassign valuation failed {detailed error message if any}
Error Messages
RCT ExpressLync 3.5.2 Integration Guide 29
ValuationRenewRecordId ValuationRenewPolicyNumber Type Description
Errors Record "{0}" not found
Policy not found
Version not found
Incomplete policy
Policy deleted
Permission denied
Calc failure
Failed to load versions
Failed to output
CreateValuationCombo Type Description
Errors Same as CreateValuation
UpdateValuationCombo Type Description
Errors Same as UpdateValuation
Validation Errors This section lists the possible validation errors.
Type Description
Conversion Unknown comment Type; expected "Underwriter Comment" or "Agent Comment"
Unknown hazard type {value}
Section Numbers out of sequence
Unknown perimeter choice {value}
Unknown shape {value}
Unknown site access ID {value}
Unknown style ID {value}
Invalid wage type
Unknown section type {value}
Invalid material code {value}
Invalid material ID {value}
Unknown buildingsystem ID {value}
Invalid Cost Data Date format {value}
Failed to convert DepreciationChoice: unknown DepreciationTypeId {value}
Unknown Unit ID {value}
Unknown BuildingSystem ID {value}
Chapter 2 Web Services
30 RCT ExpressLync 3.5.2 Integration Guide
Type Description
Unknown construction type {value}
Invalid Year Built
Version Invalid PolicyVersion Type
Estimate Expiration Date
Estimate Expiration Date should be a date in the future
Only EST type valuations should have an expiration date
PolicyNum may not be null
Invalid policy status ID
Property zip is missing
Invalid zip/postal code format
Site Access is missing
Invalid Site Access ID
StyleId is missing
Invalid Style
Invalid style/house type combo
Section Total living area is way too high (overflow)
Total living area is too high
Missing section number (wingnum)
Invalid section number. Sections should be number sequentially from 1
Year Built is missing
Year Built less than 1799
Year Built is too far into the future
Construction Type is missing
Invalid Construction Type
Living Area is outside valid range
Invalid Shape ID
Invalid perimeter choice
Too many sections
There must be at least 1 section
Section living area is too low
Perimeter value outside valid range
Missing Perimeter choice
Perimeter value missing
Shape is missing
Invalid Perimeter choice
Invalid Section type
Section type is invalid for main section
Invalid section type/coverage type combo
Error Messages
RCT ExpressLync 3.5.2 Integration Guide 31
Type Description
FloorToFloorHeight Wall height info missing
Too many wall height records
Sum of wall height percent not equal to 100
Invalid wall height percent
Invalid wall height
CustomItems CustomItem description is missing
Simple Cost is not enabled
Lump sum cost is greater than configured maximum
Lump sum cost is less than configured minimum
Simple-cost specified but {value} is not zero
Break-down cost specified, but unit cost is non-zero
Labor cost outside of configured range. ({value1}-{value2})
Equipment cost outside of configured range. ({value1}-{value2})
Materials cost outside of configured range. ({value1}-{value2})
Item total is greater than configured maximum ({value1})
Custom item total cost is zero
Invalid Building System
Invalid unit type
The number of custom items exceeds the maximum allowed ({value})
The total of all custom items is greater than the configured maximum
Invalid Coverage Type
Custom Items configuration is incomplete
CustomItem description is missing
Materials Invalid Material ID {0}
Invalid Section Number for Material ID {0}
Amount for Material ID {0} is outside the configured range ({1} - {2})
Only foundation materials may be assigned to a section
Foundation materials must be assigned to a section
Material must be assigned to a section
Preferences ArchitectFee out of range ({1} - {2})
ArchitectFeeCap out of range ({1} - {2})
Invalid ArchitectFee Flag /ArchitectFee combo
Invalid ArchitectFeeCap Flag /ArchitectFee cap combo
Invalid flag value. (must be Y or N)
GenContractorOverhead out of range ({1} - {2})
GenContractorOverheadCap out of range ({1} - {2})
Invalid GenContractorOverhead Flag / GenContractorOverhead combo
Invalid GenContractorOverheadCap Flag / GenContractorOverhead cap combo
Chapter 2 Web Services
32 RCT ExpressLync 3.5.2 Integration Guide
Type Description
GenContractorProfit out of range ({1} - {2})
GenContractorProfitCap out of range ({1} - {2})
Invalid GenContractorProfit Flag /ArchitectFee combo
Invalid GenContractorProfitCap Flag /GenContractorProfit Cap combo
DebrisRemoval out of range ({1} - {2})
DebrisRemovalCap out of range ({1} - {2})
Invalid DebrisRemoval Flag /DebrisRemoval combo
Invalid DebrisRemovalCap Flag /DebrisRemoval Cap combo
AdjustmentPercent out of range ({1} - {2})
Effective age out of range
Depreciation type is effective age but depreciation % not zero
Depreciation % out of range. ({0}-{1})
Depreciation type is entered % but effective age not zero
Depreciation configuration invalid
Overview
RCT ExpressLync 3.5.2 Integration Guide 33
Chapter 3 Object Model
Overview
Introduction The ExpressLync Web methods accept strongly typed objects for data transfer. Due to the use of strongly typed objects, the WSDL generated for the Web services will aid you in programming against the services. This chapter provides a comprehensive list of all the classes and enumerations that are used by the Web methods for data transfer. The object model is available as a Visio file (ExpressLyncObjectModel.vsd) along with this product documentation.
ExpressLync Classes This section lists all the classes within the ExpressLync object model.
There are different sets of valuation, building, and section classes for main street and high value homes. Additionally, for high value homes there are different sets of classes for the standard and advanced entry methods. For example, the MainstreetSection class should be used for a main street home section. The HighValueAdvancedSection class should be used for a high value home that uses the advanced entry method.
Your RCT Express client configuration settings determine whether you are using standardized costs or nonstandardized costs. There are different sets of classes for standardized costs and nonstandardized costs. For example, when using standardized cost, the primary structure cost results are returned in a PrimaryStructureStandardizedCost object. When using nonstandardized cost, the primary structure cost results are returned in a PrimaryStructureNonStandardizedCost object.
Note: The CalculatableValuation, CalculationResult, CustomItem, HazardResponseDetail and ValuationAggregate classes have tool-generated member names such as Item, Item1, etc. These members can hold objects of different types so they do not have a specific name assigned to them. Depending on the tool used to generate the proxy class from the WSDL, the name of these members will differ. On the .NET platform, such members are given names such as Item, Item1, etc. The item members contain only one instance of any type. Refer to the sample code in the ValuationAggregate section to see how to identify the type contained within the item members.
Chapter 3 Object Model
34 RCT ExpressLync 3.5.2 Integration Guide
System.Object Address
Address Represents an address. The class can be used for the property and mailing addresses of a valuation.
Member Description Data Type Read Only
Address1 The street address. String
Address2 Additional address information. String
City The city. String
StateOrProvince The state or province. String
ZipOrPostalCode The zip or postal code. String
System.Object Adjustment
Adjustment Represents adjustments that can be applied to a valuation to increase or decrease all the computed costs in the valuation.
Member Description Data Type Read Only
GeneralPercentage Adjustment factor that allows you to increase or decrease all costs in the valuation. The adjustment can be expressed as a positive or negative percentage. Input a percentage between -99% and 99%.
Decimal
DepreciationChoice You can depreciate a valuation either by specifying an effective age or a total percentage. The depreciation will apply to both the home and attached structures. When using the depreciation percentage approach, specify a percentage in the DepreciationPercentage member. If you prefer EffectiveAge, enter a number in the DepreciationEffectiveAge member.
DepreciationChoice
DepreciationPercentage Percentage to depreciate the value of the home. Input a percentage between 0 and 100.
Decimal
DepreciationEffectiveAge The actual age less the age that has been taken off by face-lifting, structural reconstruction, removal of functional inadequacies, modernization of equipment, etc. The system automatically computes a depreciation percentage from the effective age of the home. Input a value between 0 and 80.
Integer
WageType The type of wages to use in computing the value of the home.
WageType
WageTypeSpecified Flag to indicate if WageType has been provided.
Bool
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 35
System.Object AdjustmentParameters
AdjustmentParameters Represents a helper class for the NonStandardizedCostAdjustment class.
Member Description Data Type Read Only
IncludeForValuation When set to false, cost for Debris Removal, General Contractor Overhead and Profit, and Architect Fee are not computed. Set the flag to true to compute these costs using MSB’s standard values.
Bool
Percentage IncludeForValuation must be set to true for the Percentage field to be used. Input a percentage between 0 and 100 to override MSB’s default values and set your own percentage for Debris Removal, General Contractor Overhead and Profit, and Architect Fee.
Decimal
Cap IncludeForValuation must be set to true for the Cap field to be used. Input a dollar amount to set the maximum Debris Removal, General Contractor Overhead and Profit, and Architect Fee amount.
Integer
Examples The following table lists examples of how to use the above fields to set architect’s fees. You can follow similar steps to set contractor overhead and profit and debris removal.
If you want to… Do this…
Use the standard MSB values for architect’s fees, 1. Set IncludeForValuation to True.
2. Do not set a value for Percentage.
3. Do not set a Cap value.
Set your own architect’s fees and set a maximum dollar amount for architect’s fees,
1. Set IncludeForValuation to True.
2. Set a value for Percentage.
3. Set a Cap value.
Set your own architect’s fee percentage, 1. Set IncludeForValuation to True.
2. Set a value for Percentage.
3. Do not set a Cap value.
Use the standard MSB architect’s fees, and set a maximum dollar amount for architect’s fees,
1. Set IncludeForValuation to True.
2. Do not set a value for Percentage.
3. Set a Cap value.
Exclude architect’s fees from the valuation, 1. Set IncludeForValuation to False.
2. Do not set a value for Percentage.
3. Do not set a Cap value.
Chapter 3 Object Model
36 RCT ExpressLync 3.5.2 Integration Guide
System.Object BasementInfo
BasementInfo This class holds basement information for a main street home.
Member Description Data Type Read Only
Type The type of basement that is under the first floor of the home.
BasementType
PercentFinished The total percentage of the basement that is finished.
Byte
FinishType The basement finish type (standard or custom).
BasementFinishType
System.Object BreakdownCost
BreakdownCost Lets you specify the breakdown of labor, equipment, and material cost for a custom item used within the section of a home.
Member Description Data Type Read Only
LaborCost The total labor cost for the custom item. Decimal
EquipmentCost The total equipment cost for the custom item.
Decimal
MaterialCost The total material cost for the custom item. Decimal
System.Object BreakdownCostInt
BreakdownCostInt Represents the breakdown of labor, equipment, and material cost for a building system.
Member Description Data Type Read Only
LaborCost The total labor cost for a building system. Integer X
EquipmentCost The total equipment cost for a building system.
Integer X
MaterialCost The total material cost for a building system. Integer X
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 37
System.Object Building
Building This class represents a building/home that is being valued.
Member Description Data Type Read Only
SiteAccess The type of access available to the home location.
SiteAccess
HomeStyle The type of residence being valued. HomeStyle
System.Object BreakdownCostInt BuildingSystemCost
BuildingSystemCost The calculated cost data is grouped into categories called building systems (e.g., site work, foundations, roofing, etc.). This class represents cost data for a building system.
Member Description Data Type Read Only
System Identifies the Building System. BuildingSystem X
System.Object Valuation CalculatableValuation
CalculatableValuation This is the base class of all valuations whose value can be computed.
Member Description Data Type Read Only
CalculationResult Reference to the CalculationResult object. CalculationResult X
Preferences Reference to the Preferences object. Preferences
Item Set this member to reference an instance of the Adjustment or NonStandardizedCostAdjustment class. When using standardized cost, reference the Adjustment class object. When using nonstandardized cost, reference the NonStandardizedCostAdjustment class object.
Adjustment
Chapter 3 Object Model
38 RCT ExpressLync 3.5.2 Integration Guide
System.Object CalculationResult
CalculationResult This class holds all the calculated data for a valuation.
Member Description Data Type Read Only
CalcUser The login of the user who performed the last calculate operation.
String X
CalcDate The date and time when the valuation was last calculated.
Date/Time X
CostDataVersion The version of the MSB cost data used to compute the value of the home.
CostDataVersionType X
BuildingSystemCost Reference to the BuildingSystemCost object. BuildingSystemCost X
Item Reference to either the PrimaryStructureStandardizedCost or the PrimaryStructureNonStandardizedCost object.
PrimaryStructureCost X
System.Object ComboResult
ComboResult This is an aggregate class returned from the combo service methods. It holds a valuation object and a list of warnings from standardizing an address and evaluating hazards.
Member Description Data Type Read Only
Valuation This is a reference to a valuation aggregate object that can hold valuations of different types. The item member of the class will be a reference to the HighValueStandardValuation or HighValueAdvancedValuation object.
ValuationAggregate X
Warning List of warnings returned from standardizing addresses or evaluating hazards.
StringList X
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 39
System.Object Comment
Comment This class usually holds remarks added by insurance agents, underwriters, etc., about the valuation.
Member Description Data Type Read Only
Type The type of comment is a client configured setting. Two different types of comments can be configured per client, e.g., agent, underwriter. This member identifies the comment type as per the client setting.
String
Value The comment from the agent, underwriter, etc. The comment may contain a maximum of 511 alphanumeric characters.
String
System.Object Component
Component This class represents a material that can be added to a section of a house. RCT assumptions are added by material system. Therefore, if you add one material to a material system, you should add all relevant materials for that material system. The RCT engine does not create assumptions when parts of a material system are entered. The material assumptions are determined based upon the zip code (postal code in Canada), number of families, and style together with the year built, construction type, and total living area.
Member Description Data Type Read Only
Material The ID of the material or component. There can only be a single occurrence of a given component/material within a building or section.
String
Amount The total amount of the component/material. You can input a percentage, count or number of items, linear feet or square feet of a material. Unit is determined by the material’s unit of entry.
Decimal
Chapter 3 Object Model
40 RCT ExpressLync 3.5.2 Integration Guide
System.Object Cost
Cost The base class that holds cost results for the primary and detached structures of a house.
Member Description Data Type Read Only
InsurableReplacementCost The total replacement cost after policy exclusions have been taken into account.
Note: RCT does not itemize exclusions separately. They are incorporated within TotalReplacementCost so this field will always be identical to TotalReplacementCost.
Integer X
InsuredValue Contains the InsurableReplacementCost less Depreciation.
Integer X
Depreciation The total depreciation amount for the home. Integer X
Subtotal The sum of EquipmentCost, LaborCost, and MaterialCost calculated for the primary structure.
Integer X
Adjustment The adjustment amount computed using the general adjustment factor.
Integer X
ActualCashValue InsurableReplacementCost less Depreciation. Integer X
System.Object CostDataVersionType
CostDataVersionType Represents the cost data version used to calculate the value of the house. MSB releases updated cost data every quarter.
Member Description Data Type Read Only
Id Identifies the version of the cost data used for loading defaults and performing calculations on the current valuation.
String X
Description A short description of the cost data version. String X
Date The release date of the cost data. Date/Time X
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 41
System.Object CustomItem
CustomItem The custom item class allows you to add costs for items found in the home that are not directly available within the RCT system.
Member Description Data Type Read Only
Description A brief description of the custom item you are entering.
String
Comment Allows you to provide remarks about the custom item.
String
Quantity The actual number of custom items. This number is used to calculate the total cost.
Decimal
UnitOfMeasure The unit of measure for the custom item you are entering.
Unit
Location Allows you to specify where in the data entry report (which building system) you want the custom item to appear.
BuildingSystem
System.Object Cost DetachedStructureCost
DetachedStructureCost The base class that holds cost results for the detached structures of a house. The class does not include any members but is provided to make the object model consistent for primary structure and detached structures costs.
Member Description Data Type Read Only
None
System.Object Cost DetachedStructureCost DetachedStructureNonStandardizedCost
DetachedStructureNonStandardizedCost The class that holds cost results for the detached structures of a house when not using standardized cost. The class does not include any members but is provided to make the object model consistent for primary structure and detached structures costs.
Member Description Data Type Read Only
None
Chapter 3 Object Model
42 RCT ExpressLync 3.5.2 Integration Guide
System.Object Cost DetachedStructureCost DetachedStructureStandardizedCost
DetachedStructureStandardizedCost The class that holds cost results for the detached structures of a house when using standardized cost.
Member Description Data Type Read Only
DebrisRemoval Sum of debris removal costs calculated for the detached structures.
Integer X
SubtotalAfterDebrisRemoval SubtotalCost less DebrisRemoval. Integer X
System.Object FloorToFloorHeight
FloorToFloorHeight Represents the distance from the top of a floor to the top of the next floor.
Member Description Data Type Read Only
Percentage The percentage of the home that the height applies to. The total percentage of all instances of the FloorToFloorHeight class that are added to a section must equal 100%.
Integer
Height Actual wall height in feet between 7.0 and 40.0.
Decimal
System.Object FramingBreakdown
FramingBreakdown This class holds the framing information for a main street home section. The class allows you to specify several framing types that are used within the home along with their associated percentages. The total of all framing percentages should be 100%.
Member Description Data Type Read Only
Type The type of framing used to build the section of the home.
FramingType
Percent The percentage of the section that uses the framing type specified in the Type member above.
Byte
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 43
System.Object FoundationBasementInfo
FoundationBasementInfo This class holds foundation and basement information for a main street home.
Member Description Data Type Read Only
SlabPct The total percentage of the first floor of the residence that is built on a slab on grade.
Byte
CrawlSpacePct The total percentage of the first floor of the residence that has a crawl space below.
Byte
BasementPct The total percentage of the first floor of the home that has a basement below.
Byte
PiersRaisedPct The total percentage of the first floor of the home that is built on a pier or raised foundation.
Byte
HillsideSlope The approximate degree of steepness of the terrain covered by the suspended portion of the home.
HillSideSlope
SuspendedOverHillsidePct The percentage of the home that is suspended over a sloped terrain.
Byte
BasementInfo Reference to the BasementInfo object. BasementInfo
System.Object FoundationBreakdown
FoundationBreakdown This class holds the foundation information for the section of a main street home. The class allows you to specify several foundation types that are used within the home along with their associated percentages. The total of all foundation percentages should be 100%.
Member Description Data Type Read Only
Type The type of foundation used to build the section of the home.
FoundationType
Percent The percentage of the section that uses the foundation type specified in the Type member above.
Byte
Chapter 3 Object Model
44 RCT ExpressLync 3.5.2 Integration Guide
System.Object HazardInfo
HazardInfo This is an aggregate class that holds information on the hazard requests and the list of all the hazard results.
Member Description Data Type Read Only
Request Reference to a HazardRequest object. HazardRequest
Result Reference to a HazardResponseDetail object. HazardResponseDetailList X
System.Object HazardResponseDetail
HazardResponseDetail Contains the hazard results generated by the hazard provider for each of the hazard requests.
Member Description Data Type Read Only
Type The type of hazard for which the result has been generated.
HazardType X
Name The name of the hazard. String X
Item The results from generating the hazard. Based on the type of hazard being generated, this member holds either a decimal value or a string value. For example, if the hazard type is brush, the item member contains the distance to the nearest high or very high fuel location.
Object X
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 45
System.Object HazardRequest
HazardRequest Represents a class that holds requests on all the hazard types that need to be generated.
Member Description Data Type Read Only
Type The type of hazard to generate. HazardTypeArray
System.Object Building HighValueAdvancedBuilding
HighValueAdvancedBuilding Represents a high value home that uses the advanced entry method. When using the advanced entry method, all components have to be added to the section/wing. No components are added to the building. A high value home using the advanced entry method can have an unlimited number of sections added to its building.
Member Description Data Type Read Only
Section List of all HighValueAdvancedSection objects for this home.
HighValueAdvancedSectionList
System.Object Section HighValueSection HighValueAdvancedSection
HighValueAdvancedSection This class holds a section for a high value home that uses the advanced entry method. When using the advanced entry method, no assumptions are applied. You need to add components for each section (main home and each wing) of the home.
Member Description Data Type Read Only
Type Allows you to specify the type of section, for example, whole house, vertical or horizontal, basement, garage, etc. For the main home section of a house, not all section types are valid. The valid section types for a main home section are WholeHouse, VerticalSection, HorizontalGroundFloor, HorizontalUpperFloor.
SectionType
Coverage For individual sections, you can specify whether the cost for that section is part of Coverage A or Coverage B in the policy.
CoverageType
Chapter 3 Object Model
46 RCT ExpressLync 3.5.2 Integration Guide
System.Object Valuation CalculatableValuation HighValueValuation HighValueAdvancedValuation
HighValueAdvancedValuation This is the valuation class for a high value home that uses the advanced entry method. When you use the advanced wing entry method, the system does not use any assumptions. You need to add components for each section (main home and each wing) of the home.
Member Description Data Type Read Only
Building Reference to the HighValueAdvancedBuilding object.
HighValueAdvancedBuilding
System.Object CustomItem HighValueCustomItem
HighValueCustomItem Represents a custom item that can be added to a high value home.
Member Description Data Type Read Only
UnitCost The unit cost for a custom item can be specified by providing either the total unit cost or the breakdown (labor, equipment, and material) cost.
This member lets you specify the total per unit cost for the custom item. Input a decimal number from 0 to 10,000,000.
Decimal
BreakdownCost Reference to a BreakdownCost object. The members of the BreakdownCost object should be set to the labor, equipment, and material cost for the custom item.
BreakdownCost
CoverageType For individual custom items, you can specify whether the cost for the item is part of Coverage A or Coverage B in the policy.
CoverageType
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 47
System.Object Section HighValueSection
HighValueSection A section class that holds attributes common to both the high value standard and advanced house types.
Member Description Data Type Read Only
MeasuredPerimeter The actual ground perimeter of the section in linear feet.
Integer
FloorToFloorHeight List of all FloorToFloorHeight objects for this section.
FloorToFloorHeightList
Component List of all component objects to be included in this section.
ComponentList
System.Object Building HighValueStandardBuilding
HighValueStandardBuilding Represents a high value home that uses the standard entry method. When using the standard entry method, only foundation/basement components need to be added to the section/wing. All other components are added to the building. A high value home using the standard entry method can have up to ten sections added to its building.
Member Description Data Type Read Only
Section List of all HighValueStandardSection objects for this home.
HighValueStandardSectionList
Component List of component objects to be included in this building.
ComponentList
Chapter 3 Object Model
48 RCT ExpressLync 3.5.2 Integration Guide
System.Object Section HighValueSection HighValueStandardSection
HighValueStandardSection This class holds a section for a high value home that uses the standard entry method. When using the standard entry method, only foundation/basement components are added to the individual sections. The system uses assumptions to apply the values you enter for the building to all sections (main home and any wings) of the house.
Member Description Data Type Read Only
PerimeterChoice Lets you specify whether the perimeter of a home is being entered or if the system should compute it based on the shape of the home.
PerimeterChoice
Shape Allows you to specify the shape of the home. The system automatically calculates the perimeter based on the shape of the home specified.
SectionShape
System.Object Valuation CalculatableValuation HighValueValuation HighValueStandardValuation
HighValueStandardValuation This is the valuation class for a high value home that uses the standard entry method. When you use the standard entry method, the system uses assumptions that apply the materials you enter for the building to all sections (main home and any wings) of the home.
Member Description Data Type Read Only
Building Reference to the HighValueStandardBuilding object.
HighValueStandardBuilding
System.Object Valuation CalculatableValuation HighValueValuation
HighValueValuation This is the base valuation class for all high value homes that use the standard or advanced entry method.
Member Description Data Type Read Only
CustomItem List of all HighValueCustomItem objects that need to be included in this valuation.
HighValueCustomItemList
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 49
System.Object InsuredCustomer
InsuredCustomer Contains information about the customer that owns the house being valued.
Member Description Data Type Read Only
FullName The name of the owner of the residence being valued.
String
SecondFullName The name of a second owner of the residence being valued.
String
HomePhone The home phone number for the insured of the property being valued.
String
WorkPhone The work phone number for the insured of the property being valued.
String
MailingAddressSameAsPropertyAddress Indicates that the mailing address is the same as the property address.
Bool
MailingAddress The insured’s address, if different from the property being valued.
Address
System.Object LatLongPair
LatLongPair Represents the latitude and longitude for the property being valued.
Member Description Data Type Read Only
Latitude The angular distance north or south from the earth's equator.
Decimal
Longitude The angular distance east or west from the earth’s zero meridian.
Decimal
Chapter 3 Object Model
50 RCT ExpressLync 3.5.2 Integration Guide
System.Object LengthWidth
LengthWidth This class is used to specify the length and width of a section when using the LengthxWidth living area entry method.
Member Description Data Type Read Only
Length The length of the section of the home. Decimal
Width The width of the section of the home. Decimal
Example If the home has more than one section (for example, a main section and one a wing), measure each section separately. Do not measure them as one section.
System.Object Building MsMmhBuilding MainstreetBuilding
MainstreetBuilding Represents a main street building. A main street building can have up to three sections added to it.
Member Description Data Type Read Only
NumberOfFamilies The number of family units (one family, two family, three family, or four family) in the residence.
Byte
Section List of all MainstreetSection objects for this home.
MainstreetSectionList
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 51
System.Object MsMmhSection MainstreetSection
MainstreetSection This class holds a section for a main street home.
Member Description Data Type Read Only
FoundationAndBasement Reference to the FoundationBasementInfo object.
FoundationBasementInfo
Shape Allows you to specify the shape of the home. The system automatically calculates the perimeter based on the shape of the home specified.
SectionShape
CathedralCeilingPct The percentage of the ceiling that angles upward from the walls to the peak, following the roof’s pitch. Do not include tray ceilings.
Byte
ElaborateRoof Set to true if the roof has combinations of several styles that creates several peaks and valleys, or includes several dormers.
Bool
FloorToFloorHeight List of all FloorToFloorHeight objects for this section.
FloorToFloorHeightList
Framing List of all FramingBreakdown objects for this section.
FramingBreakdownList
Foundation List of all FoundationBreakdown objects for this section.
FoundationBreakdownList
System.Object Valuation CalculatableValuation MsMmhValuation MainStreetValuation
MainStreetValuation This is the valuation class for a main street home.
Member Description Data Type Read Only
Building Reference to the MainstreetBuilding object.
MainstreetBuilding
Chapter 3 Object Model
52 RCT ExpressLync 3.5.2 Integration Guide
System.Object MaterialDetail
MaterialDetail Represents detailed information about a material.
Member Description Data Type Read Only
Id The unique identifier for the material/component.
String X
Min The minimum allowable amount for the material/component.
Integer X
Max The maximum allowable amount for the material/component.
Integer X
UnitOfEntry The unit of entry (e.g., square feet, percentage, count) for the material/component.
MaterialUnit X
Value The description of the material/component.
String X
System.Object MaterialSubsystem
MaterialSubsystem Represents a material subsystem. A material subsystem is a subcategory of material systems used to group materials into categories. For example, material systems include components such as exterior walls, attached structures, and heating and cooling. Within the heating and cooling material system are material subsystems such as air conditioning, heating, and others.
Member Description Data Type Read Only
Name The name of the subsystem. String X
Material List of MaterialDetail objects for this subsystem.
MaterialDetailList X
Id The unique identifier for the subsystem. Integer X
System.Object MaterialSystem
MaterialSystem The materials used for a home are grouped into categories for ease of data entry, e.g., exterior walls, roof, HVAC, etc. These categories are called material systems. This class is used by the Reference service to return a list of material systems and detailed material information for all materials that can be added to these systems.
Member Description Data Type Read Only
Subsystem List of MaterialSubsystem objects for this material system
MaterialSubsystemList X
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 53
System.Object Building MsMmhBuilding MmhBuilding
MmhBuilding Represents an MMH building. An MMH building can have only one section added to it.
Member Description Data Type Read Only
Section List of all MmhSection objects for this home.
MmhSectionList
System.Object FoundationBasementInfo MmhFoundationBasementInfo
MmhFoundationBasementInfo This class holds foundation and basement information for a mobile manufactured home.
Member Description Data Type Read Only
BasementPct The total percentage of the first floor of the home that has a basement below.
Byte
PiersRaisedPct The total percentage of the first floor of the home that is built on a pier or raised foundation.
Byte
BasementInfo Reference to the BasementInfo object. BasementInfo
MmhFramingBreakdown This class holds the framing information for a mobile manufactured home section. The class allows you to specify several framing types along with their associated percentages that are used within the home. The total of all framing percentages should be 100%.
Member Description Data Type Read Only
Type The type of framing used to build the section of the home.
MmhFramingType
Percent The percentage of the section that uses the framing type specified in the Type member above.
Byte
Chapter 3 Object Model
54 RCT ExpressLync 3.5.2 Integration Guide
System.Object MsMmhSection MmhSection
MmhSection This class holds a section for a mobile manufactured home.
Member Description Data Type Read Only
FoundationAndBasement Reference to the MmhFoundationBasementInfo object.
MmhFoundationBasementInfo
HingedRoof Set to true if the roof is hinged for transportation under bridges for delivery.
Bool
Framing List of all MmhFramingBreakdown objects for this section.
MmhFramingBreakdownList
System.Object Valuation CalculatableValuation MsMmhValuation MMHValuation
MMHValuation This is the valuation class for a mobile manufactured home.
Member Description Data Type Read Only
Building Reference to the MmhBuilding object. MmhBuilding
System.Object FloorToFloorHeight MSFloorToFloorHeight
MSFloorToFloorHeight Represents the distance from the top of a floor to the top of the next floor for a main street home.
Member Description Data Type Read Only
Percentage The percentage of the home that the height applies to. The total percentage of all instances of the MSFloorToFloorHeight class that are added to a section must equal 100%.
Integer
Height Wall height in feet. Choices are limited to 8, 9, and 10 feet.
MainStreetWallHeight
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 55
System.Object Building MsMmhBuilding
MsMmhBuilding This is the base building class for a main street and mobile manufactured home building.
Member Description Data Type Read Only
Component List of component objects to be included in this building.
ComponentList
System.Object CustomItem MsMmhCustomItem
MsMmhCustomItem Represents a custom item that can be added to a main street or mobile-manufactured home.
Member Description Data Type Read Only
BreakdownCost Reference to a BreakdownCost object. The members of the BreakdownCost object should be set to include the labor, equipment, and material cost for the custom item.
BreakdownCost
System.Object MsMmhSection
MsMmhSection This section class holds attributes common to a main street and mobile manufactured home.
Member Description Data Type Read Only
PerimeterChoice Lets you specify whether the perimeter of a home is being entered or if the system should compute it based on the shape of the home.
PerimeterChoice
MeasuredPerimeter The actual ground perimeter of the section in linear feet.
Integer
LengthAndWidth Reference to the LengthWidth object used when the LengthxWidth living area entry method is used.
LengthWidth
LivingAreaEntryMethod You can specify the total living area for a section or let the system calculate the living area. This member allows you to specify the type of entry method desired.
LivingAreaEntryMethod
Chapter 3 Object Model
56 RCT ExpressLync 3.5.2 Integration Guide
System.Object Valuation CalculatableValuation MsMmhValuation
MsMmhValuation This is the base valuation class for a main street and mobile manufactured home.
Member Description Data Type Read Only
MsMmhCustomItem List of all MsMmhCustomItem objects that need to be included in this valuation.
MsMmhCustomItemList
System.Object Adjustment NonStandardizedCostAdjustment
NonStandardizedCostAdjustment Clients using the RCT system can use standardized or nonstandardized cost to compute the value of a house. When standardized cost is used, the calculated totals will reflect a uniform set of costs for architect fees, general contractor overhead and profit, and debris removal. When nonstandardized cost is used, the client has the flexibility to specify adjustments to architect's fees, general contractor overhead and profit, and debris removal. These adjustments impact the valuation of the home.
Member Description Data Type Read Only
ArchitectFee Reference to an AdjustmentParameters object that lets you override the default architect fees used to compute the value of the home.
AdjustmentParameters
GeneralContractorOverhead Reference to an AdjustmentParameters object that lets you override the default general contractor’s overhead used to compute the value of the home.
AdjustmentParameters
GeneralContractorProfit Reference to an AdjustmentParameters object that lets you override the default general contractor’s profit used to compute the value of the home.
AdjustmentParameters
DebrisRemoval Reference to an AdjustmentParameters object that lets you override the default debris removal amount used to compute the value of the home.
AdjustmentParameters
Preferences This class holds the default preferences for the home.
Member Description Data Type Read Only
ExcavationFlag The default excavation flag. Bool
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 57
System.Object Cost PrimaryStructureCost
PrimaryStructureCost This class holds a detailed breakdown of the cost data for the primary structure of the home.
Member Description Data Type Read Only
LaborCost Labor cost for building the primary structure.
Integer X
EquipmentCost Equipment cost for the primary structure. Integer X
MaterialCost Material cost for the primary structure. Integer X
SubTotal The sum of EquipmentCost, LaborCost, and MaterialCost calculated for the primary structure.
Integer X
TotalReplacementCost Expected cost of rebuilding from scratch including debris removal, architect’s fees, and general contractor overhead and profit.
Integer X
PolicyExclusions Items excluded from the policy.
Note: RCT does not itemize exclusions separately. They are incorporated within TotalReplacementCost, so this value is always 0.
Integer X
System.Object Cost PrimaryStructureCost PrimaryStructureNonStandardizedCost
PrimaryStructureNonStandardizedCost This class holds cost data for the primary structure when standardized cost is not used.
Member Description Data Type Read Only
GeneralContractorOverhead Sum of general contractor overhead costs calculated for the primary structure.
Integer X
GeneralContractorProfit Sum of general contractor profit costs calculated for the primary structure.
Integer X
ArchitectFee Sum of architect fees calculated for the primary structure.
Integer X
DebrisRemoval Sum of debris removal costs calculated for the primary structure.
Integer X
Chapter 3 Object Model
58 RCT ExpressLync 3.5.2 Integration Guide
System.Object Cost PrimaryStructureCost PrimaryStructureStandardizedCost
PrimaryStructureStandardizedCost This class holds cost data for the primary structure when standardized cost is used.
Member Description Data Type Read Only
DebrisRemoval Sum of debris removal costs calculated for the primary structure.
Integer X
SubtotalAfterDebrisRemoval SubtotalCost less DebrisRemoval. Integer X
System.Object Room
Room This class is used to specify the number of rooms in a section of a home when using the RoomCount living area entry method.
Member Description Data Type Read Only
Type The type of the room. RoomType
Size The size of the room. RoomSize
Number The number of rooms for the type and size specified.
Byte
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 59
System.Object Section
Section The home being valued can be divided into a main home section and other sections or wings.
Member Description Data Type Read Only
Number The section number. The main home section must be section number 1. Duplicate section numbers are not allowed. For the standard entry method, the home is limited to 10 sections.
Byte
Name Provide a descriptive name for the home section, for example, instead of "Wing 1," use "1985 Addition." The name is ignored for section number 1 (main home).
String
YearBuilt Input the year this section of the residence was built.
Short
ConstructionType Identifies whether the section is of standard or vintage (pre-1930 or pre-1940) construction.
ConstructionType
NoOfStories The total number of stories for the residence you are valuing.
Decimal
LivingArea The total living area is the size of the home (in square feet) based upon the exterior dimensions.
Integer
The following table lists the maximum number of sections for each of the supported house types.
House Type Maximum Sections
Main Street 3
Mobile-Manufactured 1
High Value Standard Entry 10
High Value Advanced Entry Unlimited
Chapter 3 Object Model
60 RCT ExpressLync 3.5.2 Integration Guide
System.Object Address StandardizedAddress
StandardizedAddress Represents a property address that has been standardized.
Member Description Data Type Read Only
Country The country where the standardized address is located.
String X
MatchCode A Geostan-specific alphanumeric coding indicating the quality of the match.
String X
BlockCode The U.S. Census block code. String X
LocationCode The Geostan coding detailing the known qualities of the location. An address location code has three characters: The first character is always an "A" indicating an address location. The second character is either an "S" indicating a location on a street range, or an "X" indicating a location on an intersection of two streets. The third character is a digit indicating other qualities about the location.
String X
LatLong Reference to the LatLongPair object. LatLongPair X
System.Object Valuation
Valuation This is the base class for different types of valuations.
Member Description Data Type Read Only
ValuationIdentifier Reference to the ValuationIdentifier object.
ValuationIdentifier
RecordType Denotes if the valuation is an estimate, a policy, or an inspection.
RecordType
PolicyStatus The status of the policy. You can only set the policy status to In Preparation or Complete. A valuation cannot be set to Complete until it is assigned a policy number, that is, it must be a policy and not an estimate and the valuation must have been calculated.
PolicyStatus X
DataSource Defines the process that created the valuation.
DataSource X
PropertyAddress Reference to the Address object for the property being valued.
Address
PropertyStandardizedAddress Reference to the StandardizedAddress object.
StandardizedAddress X
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 61
Member Description Data Type Read Only
OwnerUser Login of the user currently assigned to handle the valuation.
String
AssignedByUser Login of the user that assigned the valuation to the OwnerUser.
String X
CreateDate The date and time when the valuation was first created.
DateTime
CreateUser Login of the user who originally created the valuation.
String
UpdateDate The date and time the valuation was last updated.
DateTime
UpdateStatusDate The date and time the status of the valuation was last updated.
DateTime
UpdateUser Login of the user who updated the valuation last.
String
PolicyEffectiveDate The date when the policy was put into effect.
DateTime
PolicyRenewalDate The date when the policy is up for renewal.
DateTime
EstimateExpirationDate The date when the estimate will expire and be removed from the system if the estimate has not been assigned a policy or record number. The expiration date is calculated by adding a client configuration number of days to the date the estimate was created.
DateTime
InsuredCustomer Reference to the InsuredCustomer object.
InsuredCustomer
Comment List of comments for the valuation. CommentList
HazardInfo Reference to the HazardInfo object. HazardInfo
LatLong Reference to the LatLongPair object. LatLongPair
Amount The current Coverage A amount for the policy (up to $999,999,999).
Integer
AccountNumber The account number or identifier assigned to the policy. Input a maximum of 20 characters.
String
System.Object ValuationAggregate
ValuationAggregate This is an aggregate class that can hold valuations of different types. The class lets the Web services consume or return different types of valuation objects, e.g., MainStreetValuation, HighValueAdvancedValuation, etc., using the same Web method signature. For example, the ExportValuationRecordId Web method returns a ValuationAggregate object. The valuation type contained within the aggregate class depends on the type of valuation being exported.
Chapter 3 Object Model
62 RCT ExpressLync 3.5.2 Integration Guide
Member Description Data Type Read Only
Item Reference to either the MainStreetValuation, HighValueStandardValuation, or HighValueAdvancedValuation object. The ValuationAggregate contains only one instance of any type.
Valuation
The following code sample demonstrates how to identify the type of valuation that is contained within a ValuationAggregate object in C#.Net.
/*
* perform the export operation
*/
ValuationService.ValuationAggregate exportValuation =
service.ExportValuationPolicyNumber(policyNumber);
//test for the type returned by the export
if(exportValuation.Item.GetType().Name == "HighValueStandardValuation")
System.Console.Out.WriteLine("High Value Standard Valuation");
if (exportValuationItem.GetType().Name == "HighValueAdvancedValuation")
System.Console.Out.WriteLine("High Value Advanced Valuation");
The following code sample demonstrates how to identify the type of valuation that is contained within a ValuationAggregate. This code is based on the numerous getters that Apache Axis generates for each of the data types, which may be present in the ValuationAggregate.
/*
* perform the export operation
*/
ValuationAggregate exportValuation =
service.exportValuationPolicyNumber(policyNumber);
//test for the type returned by the export
if(exportValuation.getHVStandardValuation() != null)
System.out.printIn("High Value Standard Valuation");
if (exportValuation.getHVAdvancedValuation() != null)
System.out.printIn("High Value Advanced Valuation");
ExpressLync Classes
RCT ExpressLync 3.5.2 Integration Guide 63
System.Object ValuationHistory
ValuationHistory A valuation may go through many iterations or versions. This class provides summary information for all the prior versions of a valuation.
Member Description Data Type Read Only
RecordId The unique identifier that identifies the complete set of all versions of a valuation.
Integer X
PolicyNumber The policy number assigned to a valuation.
String X
VersionSummary A list of VersionSummary objects. VersionSummaryList X
System.Object ValuationIdentifier
ValuationIdentifier This class holds attributes that uniquely identify a valuation.
Member Description Data Type Read Only
RecordId The unique identifier that identifies the complete set of all versions of a valuation.
Integer
PolicyNumber The policy number assigned to a valuation.
Note: If a policy number is not supplied the valuation will be created as an estimate. The policy number can contain up to 30 letters and numbers.
String
VersionId A valuation may go through many iterations or versions. The system stores information about them so the user can refer back to earlier versions. The VersionId is the unique database identifier for an existing version of a valuation.
Integer
Chapter 3 Object Model
64 RCT ExpressLync 3.5.2 Integration Guide
System.Object VersionSummary
VersionSummary Represents an iteration or version of a valuation.
Member Description Data Type Read Only
VersionId A valuation may go through many iterations or versions. The VersionId is the unique database identifier for a valuation version.
Int X
ValuationType The type of valuation. ValuationType X
RecordType Denotes if the valuation is an estimate, a policy, or an inspection.
RecordType X
PolicyStatus The status of the policy. PolicyStatus X
Datasource Defines the process that created the valuation.
DataSource X
UpdateDate The date the version was last updated. DateTime X
InsuredFullName The name of the owner of the residence. String X
System.Object WholeBuildingCost
WholeBuildingCost Cumulative cost data for the primary structure and all detached structures of the house.
Member Description Data Type Read Only
InsurableReplacementCost The insured replacement cost for the primary structure and all detached structures.
Integer X
InsuredValue The insured value of the primary structure and all detached structures.
Integer X
ExpressLync Enumerations
RCT ExpressLync 3.5.2 Integration Guide 65
ExpressLync Enumerations
BuildingSystem Member Description
Sitework Holds the cost for preparing the site for construction.
Foundations Holds the cost for construction of the foundation of a home.
SlabonGrade Holds the cost of constructing the foundation on a hillside site.
Framing Holds the cost for exterior wall finishes.
Roofing Holds the cost for roof finishes, shape, style, dormers, and specialty items such as cupolas and skylights.
ExteriorWalls Holds the cost for exterior wall construction, columns, balconies, and specialty items such as skirting and trim/molding.
Partitions Holds the cost for interior partition wall construction, columns, bookcases, and specialty items such as interior doors and wall niches.
WallFinishes Holds the cost for interior wall finishes.
FloorFinishes Holds the cost for floor finishes and extra items such as molding.
CeilingFinishes Holds the cost for ceiling finishes and extra items such as molding.
ConveyingSystems Devices that move people or items from one place to another, for example, elevators and escalators.
PlumbingSystems Holds the cost for the plumbing system in the home.
HVACSystems Holds the cost for the heating and cooling system in the home.
ElectricalSystems Holds the cost for the electrical system in the home.
AttachedStructures Holds the cost for all structures that are attached to the home.
DetachedStructures Holds the cost for all structures that are detached from the home.
GeneralConditions Additional costs associated with, but not limited to, construction and licensing fees or permits, architect’s fees, inspection fees, etc.
ConstructionType Member Description
Standard Use standard (present-day) material assumptions, and calculate using standard construction type.
Vintage Use pre-1930 or pre-1940 material assumptions, and calculate using pre-1930 or pre-1940 construction type.
StandardVintage Use vintage component/material assumptions but calculate using standard (present day) construction type.
CoverageType Member Description
A Coverage A (Dwelling) is the part of the dwelling policy that covers the dwelling and attached additions (for example, screened porches and breezeways, attached garage, etc.). Coverage A also covers the materials and supplies for the construction, alteration, or repair of the residence.
B Coverage B (Other Structures) is the part of the dwelling policy that covers unattached structures such as a private garage or tool shed.
Chapter 3 Object Model
66 RCT ExpressLync 3.5.2 Integration Guide
DataSource Member Description
BW Valuation created via ExpressLync.
DESK Valuation uploaded from desktop application.
FIT Valuation created via FIT.
MSHV Valuation created via seamless selection
RENW Valuation created via renewal process.
WEB Valuation created via the RCT Express site.
MERG Valuation created via merge process.
TES Valuation created via Tele Estimate Service.
DepreciationChoice Member Description
None Do not depreciate the value of the home.
EnteredPercentage Use the user-entered percentage to calculate the depreciation for the home.
EffectiveAge Enter the effective age and let the system compute the depreciation for the home based on the age.
HazardType Member Description
Brushfire Select this hazard to assign a fuel risk factor to the supplied address and display the distance to the nearest high or very high fuel location.
NOTE: This command is valid only in the following states: AZ, CA, CO, NM, NV, OR, UT, and WA.
DistanceToCoast Select this hazard to display the distance to the nearest body of water along with the names of the nearest major and minor bodies of water.
NOTE: This command is valid only in the following states: AK, AL, CA, CT, DE, FL, GA, HI, IL, IN, LA, MA, MD, ME, MI, MN, MS, NC, NH, NJ, NY, OH, OR, PA, RI, SC, TX, VA, WA, and WI.
Earthquake Select this hazard to identify the nearest earthquake region and fault and display the distance to the nearest earthquake fault.
NOTE: This command is valid only in CA.
PremiumTax Select this hazard to display premium tax district information. The rules and taxing authorities vary by state.
NOTE: This command is valid only in AL, FL, GA, KY, LA, NJ, and SC.
Sinkhole Select this hazard to identify the location, size and other facts of all known sinkholes in Florida.
NOTE: This command is valid only in FL.
Windpool A windpool area is a high hurricane/flood risk area near the coast. Select this hazard to identify the closest windpool territory and if the location is in that territory.
NOTE: This hazard is valid only in AL, FL, GA, LA, MS, NC, SC, and TX.
ExpressLync Enumerations
RCT ExpressLync 3.5.2 Integration Guide 67
HomeStyle Member Description
Story_1 A home with one story of living area. The roof structure typically has a medium slope. The attic space is limited and is not intended for living area.
Story_1point5 A residence with two levels of living area, characterized by a steep roof slope and dormers (which project from the roof and have windows on their fronts). Because of the roof design, the area of the second floor is usually 40% to 70% of the ground floor area.
Story_1point75 A residence with one full level of living area and a second level that is characterized by a steep roof slope and dormers (which project from the roof and have windows on their fronts). Because of the roof design, the area of the second floor is usually 80% of the ground floor area. Sometimes referred to as a "Salt Box."
Story_2 A residence with finished living area on two floors. The area of each floor is approximately the same. The roof structure has a medium slope. The attic space is limited and is not intended for living area.
Story_2point5 A residence with three levels of living area characterized by a steep roof slope and dormers (which project from the roof and have windows on their fronts). Because of the roof design, the area of the third floor is usually 40% to 70% of the ground floor area.
Story_2point75 A residence with two full levels of living area, and a third level that is characterized by a steep roof slope and dormers (which project from the roof and have windows on their fronts). Because of the roof design, the area of the third floor is usually 80% of the ground floor area.
Story_3 A residence with finished living area on three floors. The area of each floor is approximately the same. The roof structure has a medium slope. The attic space is limited and is not intended for living area.
Story_3point5 A residence with four levels of living area characterized by a steep roof slope and dormers (which project from the roof and have windows on their fronts). Because of the roof design, the area of the fourth floor is usually 40% to 70% of the ground floor area.
Story_3point75 A residence with three full levels of living area and a fourth level that is characterized by a steep roof slope and dormers (which project from the roof and have windows on their fronts). Because of the roof design, the area of the fourth floor is usually 80% of the ground floor area.
Story_4 A residence with finished living area on four floors. The area of each floor is approximately the same. The roof structure has a medium slope. The attic space is limited and is not intended for living area.
Story_4point5 A residence with five levels of living area characterized by a steep roof slope and dormers (which project from the roof and have windows on their fronts). Because of the roof design, the area of the fifth floor is usually 40% to 70% of the ground floor area.
Story_4point75 A residence with four full levels of living area and a fifth level that is characterized by a steep roof slope and dormers (which project from the roof and have windows on their fronts). Because of the roof design, the area of the fifth floor is usually 80% of the ground floor area.
Story_5 A residence with finished living area on five floors. The area of each floor is approximately the same. The roof structure has a medium slope. The attic space is limited and is not intended for living area.
Chapter 3 Object Model
68 RCT ExpressLync 3.5.2 Integration Guide
Member Description
BackSplit A residence that is divided front to back, with three levels of finished living area: lower level, intermediate level and upper level. The lower level is immediately below the upper level as in a two-story residence. The intermediate level, adjacent to the other levels, is built on a grade approximately one-half story higher than the lower level. Back split homes have a split roof design. Use the split level style for homes that are divided side to side.
BiLevel A residence with two levels of living area, with the lower level being completely finished and normally partially below grade (with no basement below it). The entrance is a split-foyer entrance.
BilevelRowCenter An attached single-family residence with two levels of living area, with the lower level being fully finished and normally partially below grade (with no basement below it). The entrance is a split-foyer entrance. Each bilevel rowhouse unit is one of a group of two or more units joined by common walls. Such units never have units above or below, always have individual exterior walls and never have more than two walls common with adjacent units.
A center unit is inside a row, with other units on either side. This style is especially common throughout Canada.
BilevelRowEnd An attached single-family residence that has two levels of living area with the lower level being fully finished and normally partially below grade (with no basement below it). The entrance is a split-foyer entrance. Each bilevel rowhouse unit is one of a group of two or more units joined by common walls. Such units never have units above or below, always have individual exterior walls and never have more than two walls common with adjacent units.
An end unit is at the end of a row, with only one other unit adjacent to it. This style is especially common throughout Canada.
Bungalow A small, one-story house popular in the early 20th century, typically with a front porch (either open or enclosed). The most common bungalows, including California bungalows, have wood siding or wood shingle exterior walls and wood shingle roofs. Large roof overhangs are common and walls flow front to back.
CapeCod A residence with two levels of living area characterized by a steep roof slope and dormers (which project from the roof and have windows on their fronts). Because of the roof design, the area of the second floor is usually 40% to 70% of the ground floor area.
Colonial A residence with finished living area on two floors. The area of each floor is approximately the same. The roof structure has a medium slope. The attic space is limited and is not intended for living area.
CondoCoOp This style is used to calculate the costs typically covered by a condo or co-op policy. The costs include the inside features such as partition material (for example, drywall, plaster, etc.), wall, floor, and ceiling coverings, kitchen, and baths. It does not and should not include the foundation, exterior walls, roof, framing, or detached structures.
Note: If you choose this style, do not enter any information on the exterior wall, roofing, or foundation. The only exception to this would be if you have a finished basement. You input a finished basement to the foundation material system in the main home section.
Contemporary A residence designed from combinations of square and rectangular geometric patterns, blending both interiors and exteriors. Contemporary residences typically contain multiple roof lines where roofs are flat or flat with a slight pitch (shed roof). Exteriors are often plain with little or no ornate trim, typically with extensive use of glass. The designs of these residences are more modern and less traditional. They typically have wide open interiors with fewer partitions than other traditional home styles.
ExpressLync Enumerations
RCT ExpressLync 3.5.2 Integration Guide 69
Member Description
Cottage A small, one story cabin-like home, typically used as a seasonal home or a second dwelling on a property. Cottages generally have minimal or no foundation, instead resting on posts at the corners of the home.
FederalColonial Typically a 2-story home that is generally found in the eastern part of the United States. It is characterized by its flat roof and ornate wood trim along the exterior roof line. It is generally square in design and is typically an early 20th century or older structure. Exterior walls are normally painted wood.
Mediterranean A home in the Mediterranean style, including stucco exterior walls, typically pastel or white in color, red tile roof, arched openings and considerable use of wrought iron. Often found with arched windows and balconies.
OrnateVictorian A residence with 2-1/2 or 3 stories of living area, typical of the architectural style in the late 19th century. Ornate Victorians typically have extensive use of elaborate exterior and interior finishes and trims, including 36" of gingerbread on at least three lines of the house. They also include bay windows, turrets, tall chimneys and extensive porches. Use the Victorian style for less extensive use of finishes and trim, including typically 18" gingerbread.
QueenAnne A traditional 2-1/2-story home, usually of pre-1940 construction. Generous use of wood trim, and interior and exterior finishes, with high partition density inside.
RaisedRanch A residence with two levels of living area, with the lower level being completely finished and normally partially below grade (with no basement below it). The entrance is a split-foyer entrance.
Rambler A home with one story of living area. The roof structure typically has a medium slope. The attic space is limited and is not intended for living area.
Ranch A home with one story of living area. The roof structure typically has a medium slope. The attic space is limited and is not intended for living area.
RowHouseCenter An attached single-family residence. Each town house or row house unit is one of a group of two or more units adjoined by common walls. Such units never have units above or below, always have individual exterior walls, and never have more than two walls common with adjacent units.
A center unit is inside a row, with other units on either side.
RowHouseEnd An attached single-family residence. Each town house or row house unit is one of a group of two or more units adjoined by common walls. Such units never have units above or below, always have individual exterior walls, and never have more than two walls common with adjacent units.
An end unit is at the end of a row, with only one other unit adjacent to it.
SouthwestAdobe A home made of adobe brick, found mainly in the Southwest region of the United States. Decidedly Western in presentation with various wood beams for both support and ornamentation. Roofs are typically flat and made of brick and are usually coated with Stucco.
SplitFoyer A residence with two levels of living area, with the lower level being completely finished and normally partially below grade (with no basement below it). The entrance is a split-foyer entrance.
SplitLevel A residence that is divided side to side, with three levels of finished living area: lower level, intermediate level and upper level. The lower level is immediately below the upper level as in a two-story residence. The intermediate level, adjacent to the other levels, is built on a grade approximately one-half story higher than the lower level. Split-level residences have a split roof design. Use the back split style for homes that are divided front to back.
Chapter 3 Object Model
70 RCT ExpressLync 3.5.2 Integration Guide
Member Description
Substandard Subsidized or substandard housing that resembles barracks or other low-grade habitational structures found more often as part of a government facility or government subsidized facility. These homes have limited trim, if any, and minimal partitions. They typically comply with federal government codes but not necessarily standard building codes.
TownhouseCenter An attached single-family residence. Each town house or row house unit is one of a group of two or more units adjoined by common walls. Such units never have units above or below, always have individual exterior walls, and never have more than two walls common with adjacent units.
A center unit is inside a row, with other units on either side.
TownhouseEnd An attached single-family residence. Each town house or row house unit is one of a group of two or more units adjoined by common walls. Such units never have units above or below, always have individual exterior walls, and never have more than two walls common with adjacent units.
An end unit is at the end of a row, with only one other unit adjacent to it.
Trilevel A residence that is divided side to side, with three levels of finished living area: lower level, intermediate level and upper level. The lower level is immediately below the upper level as in a two-story residence. The intermediate level, adjacent to the other levels, is built on a grade approximately one-half story higher than the lower level. Split-level residences have a split roof design. Use the Back Split style for homes that are divided front to back.
TrilevelRowCenter An attached single-family residence with three levels of finished living area: lower level, intermediate level and upper level. The lower level is immediately below the upper level as in a two-story residence. The intermediate level, adjacent to the other levels, is built on a grade approximately one-half story higher than the lower level. Each trilevel rowhouse unit is one of a group of two or more units joined by common walls. Such units never have units above or below, always have individual exterior walls, and never have more than two walls common with adjacent units.
A center unit is inside a row, with other units on either side. This style is especially common throughout Canada.
TrilevelRowEnd An attached single-family residence with three levels of finished living area: lower level, intermediate level and upper level. The lower level is immediately below the upper level as in a two-story residence. The intermediate level, adjacent to the other levels, is built on a grade approximately one-half story higher than the lower level. Each trilevel rowhouse unit is one of a group of two or more units joined by common walls. Such units never have units above or below, always have individual exterior walls, and never have more than two walls common with adjacent units.
An end unit is at the end of a row, with only one other unit adjacent to it. This style is especially common throughout Canada.
Victorian A residence with 2-1/2 or 3 stories of living area, typical of the architectural style in the late 19th century. Victorians typically have elaborate exterior and interior finishes and trims, including 18" of gingerbread on at least three lines of the house. They also include bay windows, turrets, tall chimneys and extensive porches. For Victorians with extensive use of finishes and trims, use the Ornate Victorian Style, which typically has 36" gingerbread.
ExpressLync Enumerations
RCT ExpressLync 3.5.2 Integration Guide 71
Material Unit Member Description
Count The unit of entry for the material is count.
Percent The unit of entry for the material is percentage.
SquareFeet The unit of entry for the material is square feet.
LinearFeet The unit of entry for the material is linear feet.
PerimeterChoice Member Description
Default Use the default shape (rectangular) to compute the perimeter.
Entered Use the user-entered value for the perimeter.
Shape Use the specified shape to compute the perimeter.
PolicyStatus Member Description
In_Preparation The valuation is in preparation.
Pending_Review The valuation is waiting for underwriter to review and approve the policy.
Complete The valuation is complete. A valuation cannot be set to complete until it is assigned a policy number, that is, it must be a policy and not an estimate and the valuation must have been calculated.
Rejected The underwriter rejected the policy.
RenewallP The valuation is in the Renewal process state.
Superseded While the valuation was in the "In-Preparation" state, it was superseded by a newer version in the history.
RecordType Member Description
EST A version intended as the basis for a quote to a customer or prospective customer.
POL A version intended as the basis for a business contract.
INS A version generated after an inspector visits a property that is intended for validating the policy.
Chapter 3 Object Model
72 RCT ExpressLync 3.5.2 Integration Guide
SectionShape Member Description
Irregular The section shape is irregular.
Rectangular_or_Slightly_Irregular The section shape is rectangular
or slightly irregular.
Square The section shape is square.
Very_Irregular The section shape is very irregular.
SectionType Member Description
Whole_House Includes the entire house.
Vertical_Section A vertical section of the home.
Horizontal_Ground_Floor A horizontal section on the ground floor of the home.
Horizontal_Upper_Floor A horizontal section on the upper floor of the home.
ExpressLync Enumerations
RCT ExpressLync 3.5.2 Integration Guide 73
Member Description
Basement The total percentage of the first floor of the residence that has basement below.
Note: To qualify as a basement, you should be able to stand up in the space. If not, it is probably a crawl space.
Basement_Daylight A daylight basement is normally built on a sloping site where the foundation walls are partially exposed to allow for the installation of windows and a door. This type of basement allows for the door to open into the yard because the basement is at ground level. The exposed portion of the basement wall typically includes a stucco and paint finish on the exterior of standard concrete or masonry wall construction.
Attached_Garage A garage directly attached to the house that does not have any living area above.
Detached_Garage A free-standing, 1-story garage with an independent structural system (for example, foundation, roof, etc.), not attached to the home.
Detached_Garage_Living_Area_Above A free-standing garage with an independent structural system (for example, foundation, roof, etc.), not attached to the home, that includes finished living area on a second floor above the garage area.
Detached_Garage_Living_Area_Attached A free-standing garage with an independent structural system (for example, foundation, roof, etc.), not attached to the home, that includes finished living area adjacently attached.
BuiltIn_Garage A garage built into the residence at the first floor or grade level, which has living area above and which has been included in the dimensions/floor area of the house (the way it would be in a split-level or bilevel home).
Bathhouse Detached structure built on a slab, usually near a swimming pool and used for changing clothes and possibly showering.
Guesthouse A free-standing structure, separate from the main home, that contains a living area for visitors or guests when they stay.
Note: Costs are based upon a 1 story structure, but this option can be used for a 2 story structure.
Studio A building usually used for painting or sculpting with an above average percentage of windows.
User_Defined The section type does not match any of the predefined types.
SiteAccess Member Description
Difficult_Access_or_Steep_Terrain Site accessibility may be difficult for people, equipment, and materials to get to, in, and around the site. Accessibility for items such as a place for workers to park their vehicles may be difficult and delivery trucks may have difficulty getting to the site. In some cases, materials may need to be unloaded into smaller vehicles and delivered up to the site, then unloaded again. This type of condition will also be found with mountain construction.
Elevator_Access Site accessibility for condos, apartments and co-op units is made through elevator access. To get people, equipment, and materials to, in, and around the site, elevators must be used. Delivery trucks must be unloaded and materials must be loaded then unloaded again from the elevator. The additional labor must be taken into account when dealing with elevator access.
Chapter 3 Object Model
74 RCT ExpressLync 3.5.2 Integration Guide
Member Description
Flat_Area_Easy_Access_Roads Site accessibility is easy for people, equipment, and materials to get to, in, and around the site. Accessibility for items such as a place for workers to park their vehicles, a level area for unloading and storing materials, and the ability of delivery trucks to get directly to the site is also relatively easy.
Island_Access_Long_Distance Site accessibility for people, equipment, and materials to get to, in, and around the site is by ferryboat only (1 mile or more). The down time of the workers and delivery trucks must be taken into account when dealing with island construction.
Island_Access_Short_Distance Site accessibility for people, equipment, and materials to get to, in, and around the site is by ferryboat only (1 mile or less). The down time of the workers and delivery trucks must be taken into account when dealing with island construction.
Isolated_Rural_Area The availability of people, equipment, and materials are not locally available. Remote sites are difficult to access and will increase the construction cost.
Mountain_Region Accounts for the building costs in mountain resort areas where costs are high, and site access is more challenging than standard conditions. These two factors combined comprise the Mountain Region Conditions, which accounts for the labor rates and material costs reflecting the higher demand for labor and material in addition to added challenges involved in material delivery in these areas.
Narrow_or_Hillside_Area Site accessibility may be slightly difficult for people, equipment, and materials to get to, in, and around the site. Accessibility for items such as a place for workers to park their vehicles may also be slightly difficult. Due to site slope, storage and unloading of materials requires accommodations not observed in level sites. Materials and delivery trucks may not be able to get directly to the site.
Slightly_Congested_Roads Site accessibility may be slightly difficult for people, equipment, and materials to get to, in, and around the site. Accessibility for items such as a place for workers to park their vehicles may also be slightly difficult. There may be a slightly un-level area for the unloading and storage of materials and delivery trucks may or may not be able to get directly up to site.
Unit Member Description
LF100 100 linear feet
SF100 Square
Count Count
CuFt Cubic foot
CuYd Cubic yard
Day Day
Each Each
Flt Flight
Lbs Pounds
LinFt Lineal foot
LumpSumCost Lump sum cost
ExpressLync Enumerations
RCT ExpressLync 3.5.2 Integration Guide 75
Member Description
Mos Months
SqFt Square foot
SqYd Square yard
Weeks Weeks
WageType Member Description
Reconstruction The system will calculate the cost to construct, at current prices, an exact duplicate or replica of the building using like kind and quality material, construction standards, design, layout, and quality of workmanship.
New_Construction The system will calculate the cost to replace the entire building with one of equal quality and utility.
Use_Default The system will select the most appropriate value basis, dependent on location and other related determinants.
BasementFinishType Member Description
Standard A basement finish is considered to have a standard finish if it includes the following
• Drywall installed around the perimeter, over the insulation
• Interior drywall partitions
• Hollow core doors
• Painted drywall wall finishes
• Painted drywall ceiling
• Carpet and vinyl tile floor finishes
• Standard electrical outlets and lighting
• Standard heating system
Custom A basement is considered to have a custom finish if it includes the following
• Drywall installed around the perimeter, over the insulation
• Ample interior drywall partitions
• Solid core doors
• Partial millwork paneling and painted drywall wall finishes
• Painted drywall ceiling and linear wood ceiling
• High quality carpet floor finish
• Ample electrical outlets and lighting
• Heating and air conditioning system
Chapter 3 Object Model
76 RCT ExpressLync 3.5.2 Integration Guide
BasementType Member Description
BelowGrade Below the grade basement
DaylightWalkout Walkout basement
FoundationType Member Description
Stone Stone foundation
Brick Brick foundation
Concrete Poured concrete foundation
Block Concrete block foundation
FramingType Member Description
Wood2x4 2x4 wood stud framing
Wood2x6 2x6 wood stud framing
Steel Steel stud framing
PostAndBeam Post & Beam is a method of framing that uses heavy framing members, posts (columns) and beams. The beams are supported by columns rather than bearing walls. This framing allows for creation of large unobstructed interior spaces. Heavy planks are used for the floor and roof.
HillsideSlope Member Description
ZeroToFifteen 0 – 15 degrees
FifteenToThirty 15 – 30 degrees
ThirtyToFortyFive 30 – 45 degrees
AboveFortyFive Greater than 45 degrees
LivingAreaEntryMethod Member Description
TotalLivingArea You calculate and enter the total living area directly. When calculating the total living area, include the area for all floors plus the area for built-in garages. DO NOT include the area for basements (which are included using the % Basement field), or porches, breezeways, decks, or one-story attached garages (which are included in Attached Structures).
LengthxWidth Provide the dimensions (length and width) for the home and let the system automatically calculate the total living area. This is the most accurate method for calculating the total living area.
RoomCount Provide the number of rooms by size (small, medium and large) and type (great room, bedrooms, etc.) and let the system automatically calculate the total living area.
ExpressLync Enumerations
RCT ExpressLync 3.5.2 Integration Guide 77
MSWallheight Member Description
8 8 Feet
9 9 Feet
10 10 Feet
MmhFramingType Member Description
Wood2x4 2x4 wood stud framing
Wood2x6 2x6 wood stud framing
RoomSize Member Description
Small Small Room Size
Medium Medium Room Size
Large Large Room Size
RoomType Member Description
DiningRooms DiningRooms
LivingRooms LivingRooms
DenStudyOffices DenStudyOffices
Bedrooms Bedrooms
HalfBaths HalfBaths
FamilyRooms FamilyRooms
EntriesFoyers EntriesFoyers
ExtraRooms ExtraRooms
MudRooms MudRooms
StorageRooms StorageRooms
LaundryUtilitiesSewing LaundryUtilitiesSewing
BreakfastNooks BreakfastNooks
BuiltinGarage BuiltinGarage
FullBaths FullBaths
GreatRoom GreatRoom
Chapter 3 Object Model
78 RCT ExpressLync 3.5.2 Integration Guide
ValuationType Member Description
HighValueAdvancedValuation Valuation for a high value home that uses the advanced entry method.
HighValueStandardValuation Valuation for a high value home that uses the standard entry method.
MainstreetValuation Valuation for a main street home.
MMHValuation Valuation for a mobile manufactured home.
ComboOption Member Description
Calculate Calculate the valuation as part of the combo command.
Export Export the valuation as part of the combo command.
Overview of Material Codes
RCT ExpressLync 3.5.2 Integration Guide 79
Chapter 4 Material Codes
Overview of Material Codes
Introduction to Material Codes Material codes identify materials that can be used within an RCT system. Some materials can be used only for specific house types while others can be used for multiple house types. Material codes are grouped into categories called material systems and subcategories called material subsystems. Exterior walls, attached structures, and heating and cooling are examples of material systems. Within the heating and cooling material system are material subsystems such as air conditioning, heating, and others.
Material Reference List This documentation package includes four files that list the material codes for different house types (see table below). Material Reference List.xsl is an extensible style sheet that displays the Material Reference List.xml files in a well-organized, tabular format.
File Name House Type
MS Material Reference List.xml Mainstreet home
HV Std Entry Material Reference List.xml High Value home using standard entry method
HV Adv Entry Material Reference List.xml High Value home using advanced entry method
The minimum and maximum values for the materials listed in the material reference lists are default MSB values. Your RCT Express site can be configured to use a different set of minimum and maximum values.
The material reference lists can also be retrieved by using the Web methods in the Reference Web Service.
Material Systems and Subsystems Each component/material in the material reference list is unique to the combination of material system and material subsystem. Therefore, you will see some materials duplicated in this list. For example, for high value homes, drywall is listed with component IDs 35001 and 45001. Component 35001 corresponds to material system ID 6: Partition Walls/material subsystem 67 - Partitions, while component ID 45001 corresponds to material system ID 8: Ceiling Finish/material subsystem 16 - Ceilings.
Chapter 4 Material Codes
80 RCT ExpressLync 3.5.2 Integration Guide
RCT ExpressLync 3.5.2 Integration Guide 81
Appendix A Backward Compatibility The functional behavior of several Web methods changed in this version of ExpressLync. This section lists the changes to Web methods between this version and prior versions (3.5 and 3.5.1) of ExpressLync.
Valuation Service Web Methods Version 3.5, 3.5.1 Version 3.5.2
CalculateValuationRecordId
CalculateValuationPolicyNumber
Assumptions are loaded prior to performing the calculation.
No assumptions are loaded during the method execution. The method checks specific material rules set up on your RCT Express site prior to performing the calculation.
CreateValuationRecordId
CreateValuationPolicyNumber
No assumptions are loaded during the method execution.
Assumptions are loaded after the record is created if all the required data is provided during the create.
UpdateValuationRecordId
UpdateValuationPolicyNumber
No assumptions are loaded during the method execution.
Assumptions are loaded after the record is updated if all the required data is provided during the update.
RenewValuationRecordId
RenewValuationPolicyNumber
Method returns the new renewed valuation version.
Method returns the new renewed valuation version and the previous version that is renewed. This helps you compare the valuation results for the two versions.
ValuationComboService Web Methods Version 3.5, 3.5.1 Version 3.5.2
CreateValuationCombo
UpdateValuationCombo
Supported StandardizeAddress and EvaluateHazards flags in addition to the Calculate and Export flag.
The StandardizeAddress and EvaluateHazards flags are no longer supported. The Calculate and Export flag continue to be supported.
Use the StandardizeAddressPolicyNumer or StandardizeAddressRecordId to standardize the property address. Use the ApplyHazardInfoPolicyNumber or ApplyHazardInfoRecordId to evaluate the hazards for the property.
ValuationCombo Supported. Obsolete. No longer provided.
Appendix A Backward Compatibility
82 RCT ExpressLync 3.5.2 Integration Guide