<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.4) on Fri Sep 20 12:10:30 CEST 2019 -->
<title>AssociationRoleBuilder (Apache SIS 1.0 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2019-09-20">
<meta name="keywords" content="org.apache.sis.feature.builder.AssociationRoleBuilder class">
<meta name="keywords" content="setName()">
<meta name="keywords" content="setMinimumOccurs()">
<meta name="keywords" content="setMaximumOccurs()">
<meta name="keywords" content="setDefinition()">
<meta name="keywords" content="setDesignation()">
<meta name="keywords" content="setDescription()">
<meta name="keywords" content="setDeprecated()">
<meta name="keywords" content="build()">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../sis.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="AssociationRoleBuilder (Apache SIS 1.0 API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/AssociationRoleBuilder.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.sis.feature.builder</a></div>
<h2 title="Class AssociationRoleBuilder" class="title">Class AssociationRoleBuilder</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></li>
<li>
<ul class="inheritance">
<li><a href="TypeBuilder.html" title="class in org.apache.sis.feature.builder">TypeBuilder</a></li>
<li>
<ul class="inheritance">
<li><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">PropertyTypeBuilder</a></li>
<li>
<ul class="inheritance">
<li>AssociationRoleBuilder</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="../../util/Localized.html" title="interface in org.apache.sis.util">Localized</a></code></dd>
</dl>
<hr>
<pre>public final class <span class="typeNameLabel">AssociationRoleBuilder</span>
extends <a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">PropertyTypeBuilder</a></pre>
<div class="block">Describes one association from the <code>Feature­Type</code> to be built by an <code>Feature­Type­Builder</code> to another
 <code>Feature­Type</code>. A different instance of <code>Association­Role­Builder</code> exists for each feature association
 to describe. Those instances are created preferably by <code>Feature­Type­Builder​.add­Association(Feature­Type)</code>,
 or in case of cyclic reference by <code>Feature­Type­Builder​.add­Association(Generic­Name)</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.8</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../DefaultAssociationRole.html" title="class in org.apache.sis.feature"><code>Default­Association­Role</code></a>, 
<a href="FeatureTypeBuilder.html#addAssociation(org.apache.sis.feature.DefaultFeatureType)"><code>Feature­Type­Builder​.add­Association(Default­Feature­Type)</code></a>, 
<a href="FeatureTypeBuilder.html#addAssociation(org.opengis.util.GenericName)"><code>Feature­Type­Builder​.add­Association(Generic­Name)</code></a></dd>

<p><font size="-1">Defined in the <code>sis-feature</code> module</font></p>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../DefaultAssociationRole.html" title="class in org.apache.sis.feature">DefaultAssociationRole</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#build()">build</a></span>()</code></th>
<td class="colLast">
<div class="block">Builds the association role from the information specified to this builder.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDefinition(java.lang.CharSequence)">setDefinition</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;definition)</code></th>
<td class="colLast">
<div class="block">Sets a concise definition of the element.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDeprecated(boolean)">setDeprecated</a></span>&#8203;(boolean&nbsp;deprecated)</code></th>
<td class="colLast">
<div class="block">Sets whether the type is deprecated.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDescription(java.lang.CharSequence)">setDescription</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;description)</code></th>
<td class="colLast">
<div class="block">Sets optional information beyond that required for concise definition of the element.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDesignation(java.lang.CharSequence)">setDesignation</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;designation)</code></th>
<td class="colLast">
<div class="block">Sets a natural language designator for the element.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMaximumOccurs(int)">setMaximumOccurs</a></span>&#8203;(int&nbsp;occurs)</code></th>
<td class="colLast">
<div class="block">Sets the maximum number of associations.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMinimumOccurs(int)">setMinimumOccurs</a></span>&#8203;(int&nbsp;occurs)</code></th>
<td class="colLast">
<div class="block">Sets the minimum number of associations.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setName(java.lang.CharSequence)">setName</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;localPart)</code></th>
<td class="colLast">
<div class="block">Sets the <code>Feature­Association­Role</code> name as a simple string (local name).</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setName(java.lang.CharSequence...)">setName</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>...&nbsp;components)</code></th>
<td class="colLast">
<div class="block">Sets the <code>Feature­Association­Role</code> name as a string in the given scope.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setName(org.opengis.util.GenericName)">setName</a></span>&#8203;(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/GenericName.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">GenericName</a>&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Sets the <code>Feature­Association­Role</code> name as a generic name.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.PropertyTypeBuilder">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;<a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">PropertyTypeBuilder</a></h3>
<code><a href="PropertyTypeBuilder.html#getMaximumOccurs()">get­Maximum­Occurs</a>, <a href="PropertyTypeBuilder.html#getMinimumOccurs()">get­Minimum­Occurs</a>, <a href="PropertyTypeBuilder.html#remove()">remove</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.TypeBuilder">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;<a href="TypeBuilder.html" title="class in org.apache.sis.feature.builder">TypeBuilder</a></h3>
<code><a href="TypeBuilder.html#getDefinition()">get­Definition</a>, <a href="TypeBuilder.html#getDescription()">get­Description</a>, <a href="TypeBuilder.html#getDesignation()">get­Designation</a>, <a href="TypeBuilder.html#getLocale()">get­Locale</a>, <a href="TypeBuilder.html#getName()">get­Name</a>, <a href="TypeBuilder.html#isDeprecated()">is­Deprecated</a>, <a href="TypeBuilder.html#toString()">to­String</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">get­Class</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hash­Code</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notify­All</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="setName(org.opengis.util.GenericName)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre class="methodSignature">public&nbsp;<a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a>&nbsp;setName&#8203;(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/GenericName.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">GenericName</a>&nbsp;name)</pre>
<div class="block">Sets the <code>Feature­Association­Role</code> name as a generic name.
 If another name was defined before this method call, that previous value will be discarded.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="PropertyTypeBuilder.html#setName(org.opengis.util.GenericName)">set­Name</a></code>&nbsp;in class&nbsp;<code><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">Property­Type­Builder</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the generic name (can not be <code>null</code>).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for allowing method calls chaining.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="TypeBuilder.html#getName()"><code>Type­Builder​.get­Name()</code></a>, 
<a href="TypeBuilder.html#setName(java.lang.CharSequence)"><code>Type­Builder​.set­Name(Char­Sequence)</code></a>, 
<a href="../AbstractIdentifiedType.html#NAME_KEY"><code>Abstract­Identified­Type​.NAME_KEY</code></a></dd>
</dl>
</li>
</ul>
<a id="setName(java.lang.CharSequence)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre class="methodSignature">public&nbsp;<a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a>&nbsp;setName&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;localPart)</pre>
<div class="block">Sets the <code>Feature­Association­Role</code> name as a simple string (local name).
 The namespace will be the value specified by the last call to <a href="FeatureTypeBuilder.html#setNameSpace(java.lang.CharSequence)"><code>Feature­Type­Builder​.set­Name­Space(Char­Sequence)</code></a>,
 but that namespace will not be visible in the <a href="../../util/iso/DefaultLocalName.html#toString()">string representation</a> unless the <a href="../../util/iso/AbstractName.html#toFullyQualifiedName()">fully qualified name</a> is requested.

 <p>This convenience method creates a <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/LocalName.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>Local­Name</code></a> instance from
 the given <code>Char­Sequence</code>, then delegates to <a href="#setName(org.opengis.util.GenericName)"><code>set­Name(Generic­Name)</code></a>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="PropertyTypeBuilder.html#setName(java.lang.CharSequence)">set­Name</a></code>&nbsp;in class&nbsp;<code><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">Property­Type­Builder</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>local­Part</code> - the local part of the generic name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for allowing method calls chaining.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="TypeBuilder.html#getName()"><code>Type­Builder​.get­Name()</code></a>, 
<a href="TypeBuilder.html#setName(java.lang.CharSequence...)"><code>Type­Builder​.set­Name(Char­Sequence...)</code></a>, 
<a href="FeatureTypeBuilder.html#getNameSpace()"><code>Feature­Type­Builder​.get­Name­Space()</code></a></dd>
</dl>
</li>
</ul>
<a id="setName(java.lang.CharSequence...)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre class="methodSignature">public&nbsp;<a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a>&nbsp;setName&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>...&nbsp;components)</pre>
<div class="block">Sets the <code>Feature­Association­Role</code> name as a string in the given scope.
 The <code>components</code> array must contain at least one element.
 The last component (the <a href="../../util/iso/AbstractName.html#tip()">tip</a>) will be sufficient
 in many cases for calls to the <a href="../AbstractFeature.html#getProperty(java.lang.String)"><code>Abstract­Feature​.get­Property(String)</code></a> method.
 The other elements before the last one are optional and can be used for resolving ambiguity.
 They will be visible as the name <a href="../../util/iso/DefaultScopedName.html#path()">path</a>.

 <div class="note"><b>Example:</b>
 a call to <code>set­Name("A", "B", "C")</code> will create a "A:B:C" name.
 An association built with this name can be obtained from a feature by a call to <code>feature​.get­Property("C")</code>
 if there is no ambiguity, or otherwise by a call to <code>feature​.get­Property("B:C")</code> (if non-ambiguous) or
 <code>feature​.get­Property("A:B:C")</code>.</div>

 In addition to the path specified by the <code>components</code> array, the name may also contain
 a namespace specified by the last call to <a href="FeatureTypeBuilder.html#setNameSpace(java.lang.CharSequence)"><code>Feature­Type­Builder​.set­Name­Space(Char­Sequence)</code></a>.
 But contrarily to the specified components, the namespace will not be visible in the name
 <a href="../../util/iso/AbstractName.html#toString()">string representation</a> unless the
 <a href="../../util/iso/AbstractName.html#toFullyQualifiedName()">fully qualified name</a> is requested.

 <p>This convenience method creates a <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/LocalName.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>Local­Name</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/ScopedName.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>Scoped­Name</code></a>
 instance depending on whether the <code>names</code> array contains exactly 1 element or more than 1 element, then
 delegates to <a href="#setName(org.opengis.util.GenericName)"><code>set­Name(Generic­Name)</code></a>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="PropertyTypeBuilder.html#setName(java.lang.CharSequence...)">set­Name</a></code>&nbsp;in class&nbsp;<code><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">Property­Type­Builder</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>components</code> - the name components as an array of <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> instances.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for allowing method calls chaining.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="TypeBuilder.html#getName()"><code>Type­Builder​.get­Name()</code></a>, 
<a href="TypeBuilder.html#setName(java.lang.CharSequence)"><code>Type­Builder​.set­Name(Char­Sequence)</code></a>, 
<a href="FeatureTypeBuilder.html#getNameSpace()"><code>Feature­Type­Builder​.get­Name­Space()</code></a></dd>
</dl>
</li>
</ul>
<a id="setMinimumOccurs(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMinimumOccurs</h4>
<pre class="methodSignature">public&nbsp;<a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a>&nbsp;setMinimumOccurs&#8203;(int&nbsp;occurs)</pre>
<div class="block">Sets the minimum number of associations. If the given number is greater than the
 <a href="PropertyTypeBuilder.html#getMaximumOccurs()">maximal number</a> of associations, than the maximum
 is also set to that value.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="PropertyTypeBuilder.html#setMinimumOccurs(int)">set­Minimum­Occurs</a></code>&nbsp;in class&nbsp;<code><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">Property­Type­Builder</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>occurs</code> - the new minimum number of associations.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for allowing method calls chaining.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="PropertyTypeBuilder.html#getMinimumOccurs()"><code>Property­Type­Builder​.get­Minimum­Occurs()</code></a></dd>
</dl>
</li>
</ul>
<a id="setMaximumOccurs(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMaximumOccurs</h4>
<pre class="methodSignature">public&nbsp;<a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a>&nbsp;setMaximumOccurs&#8203;(int&nbsp;occurs)</pre>
<div class="block">Sets the maximum number of associations. If the given number is less than the
 <a href="PropertyTypeBuilder.html#getMinimumOccurs()">minimal number</a> of associations, than the minimum
 is also set to that value. <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true#MAX_VALUE" title="class or interface in java.lang" class="externalLink"><code>Integer​.MAX_VALUE</code></a> means that there is no maximum.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="PropertyTypeBuilder.html#setMaximumOccurs(int)">set­Maximum­Occurs</a></code>&nbsp;in class&nbsp;<code><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">Property­Type­Builder</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>occurs</code> - the new maximum number of associations.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for allowing method calls chaining.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="PropertyTypeBuilder.html#getMaximumOccurs()"><code>Property­Type­Builder​.get­Maximum­Occurs()</code></a></dd>
</dl>
</li>
</ul>
<a id="setDefinition(java.lang.CharSequence)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefinition</h4>
<pre class="methodSignature">public&nbsp;<a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a>&nbsp;setDefinition&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;definition)</pre>
<div class="block">Sets a concise definition of the element.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="PropertyTypeBuilder.html#setDefinition(java.lang.CharSequence)">set­Definition</a></code>&nbsp;in class&nbsp;<code><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">Property­Type­Builder</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>definition</code> - a concise definition of the element, or <code>null</code> if none.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for allowing method calls chaining.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="TypeBuilder.html#getDefinition()"><code>Type­Builder​.get­Definition()</code></a>, 
<a href="../AbstractIdentifiedType.html#DEFINITION_KEY"><code>Abstract­Identified­Type​.DEFINITION_KEY</code></a></dd>
</dl>
</li>
</ul>
<a id="setDesignation(java.lang.CharSequence)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDesignation</h4>
<pre class="methodSignature">public&nbsp;<a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a>&nbsp;setDesignation&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;designation)</pre>
<div class="block">Sets a natural language designator for the element.
 This can be used as an alternative to the <a href="TypeBuilder.html#getName()">name</a> in user interfaces.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="PropertyTypeBuilder.html#setDesignation(java.lang.CharSequence)">set­Designation</a></code>&nbsp;in class&nbsp;<code><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">Property­Type­Builder</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>designation</code> - a natural language designator for the element, or <code>null</code> if none.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for allowing method calls chaining.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="TypeBuilder.html#getDesignation()"><code>Type­Builder​.get­Designation()</code></a>, 
<a href="../AbstractIdentifiedType.html#DESIGNATION_KEY"><code>Abstract­Identified­Type​.DESIGNATION_KEY</code></a></dd>
</dl>
</li>
</ul>
<a id="setDescription(java.lang.CharSequence)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDescription</h4>
<pre class="methodSignature">public&nbsp;<a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a>&nbsp;setDescription&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;description)</pre>
<div class="block">Sets optional information beyond that required for concise definition of the element.
 The description may assist in understanding the feature scope and application.
 If the type <a href="TypeBuilder.html#isDeprecated()">is deprecated</a>, then the description should
 give indication about the replacement (e.g. <cite>"superceded by …"</cite>).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="PropertyTypeBuilder.html#setDescription(java.lang.CharSequence)">set­Description</a></code>&nbsp;in class&nbsp;<code><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">Property­Type­Builder</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>description</code> - information beyond that required for concise definition of the element, or <code>null</code> if none.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for allowing method calls chaining.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="TypeBuilder.html#getDescription()"><code>Type­Builder​.get­Description()</code></a>, 
<a href="../AbstractIdentifiedType.html#DESCRIPTION_KEY"><code>Abstract­Identified­Type​.DESCRIPTION_KEY</code></a></dd>
</dl>
</li>
</ul>
<a id="setDeprecated(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDeprecated</h4>
<pre class="methodSignature">public&nbsp;<a href="AssociationRoleBuilder.html" title="class in org.apache.sis.feature.builder">AssociationRoleBuilder</a>&nbsp;setDeprecated&#8203;(boolean&nbsp;deprecated)</pre>
<div class="block">Sets whether the type is deprecated.
 If the type is deprecated, then the <a href="TypeBuilder.html#setDescription(java.lang.CharSequence)">description</a>
 should be set to an indication about the replacement (e.g. <cite>"superceded by …"</cite>).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="PropertyTypeBuilder.html#setDeprecated(boolean)">set­Deprecated</a></code>&nbsp;in class&nbsp;<code><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">Property­Type­Builder</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>deprecated</code> - whether this type is deprecated.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code> for allowing method calls chaining.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="TypeBuilder.html#isDeprecated()"><code>Type­Builder​.is­Deprecated()</code></a>, 
<a href="../AbstractIdentifiedType.html#DEPRECATED_KEY"><code>Abstract­Identified­Type​.DEPRECATED_KEY</code></a></dd>
</dl>
</li>
</ul>
<a id="build()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>build</h4>
<pre class="methodSignature">public&nbsp;<a href="../DefaultAssociationRole.html" title="class in org.apache.sis.feature">DefaultAssociationRole</a>&nbsp;build()</pre>
<div class="block">Builds the association role from the information specified to this builder.
 If a role has already been built and this builder state has not changed since the role creation,
 then the previously created <code>Feature­Association­Role</code> instance is returned.

 <div class="warning"><b>Warning:</b> In a future SIS version, the return type may be changed to the
 <code>org​.opengis​.feature​.Feature­Association­Role</code> interface. This change is pending GeoAPI revision.</div></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="PropertyTypeBuilder.html#build()">build</a></code>&nbsp;in class&nbsp;<code><a href="PropertyTypeBuilder.html" title="class in org.apache.sis.feature.builder">Property­Type­Builder</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the association role.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/AssociationRoleBuilder.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2010&#x2013;2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
