code: public List<JAXBElement<? extends AbstractCurveSegmentType>> get_CurveSegment() {
          if (_CurveSegment == null) {
              _CurveSegment = new ArrayList<JAXBElement<? extends AbstractCurveSegmentType>>();
          }
          return this._CurveSegment;
      }
docs: Gets the value of the curveSegment property.
  
  <p>
  This accessor method returns a reference to the live list,
  not a snapshot. Therefore any modification you make to the
  returned list will be present inside the JAXB object.
  This is why there is not a <CODE>set</CODE> method for the curveSegment property.
  
  <p>
  For example, to add a new item, do as follows:
  <pre>
  get_CurveSegment().add(newItem);
  </pre>
  
  
  <p>
  Objects of the following type(s) are allowed in the list
  {@link JAXBElement }{@code <}{@link ArcByBulgeType }{@code >}
  {@link JAXBElement }{@code <}{@link ArcStringByBulgeType }{@code >}
  {@link JAXBElement }{@code <}{@link GeodesicType }{@code >}
  {@link JAXBElement }{@code <}{@link GeodesicStringType }{@code >}
  {@link JAXBElement }{@code <}{@link OffsetCurveType }{@code >}
  {@link JAXBElement }{@code <}{@link CircleByCenterPointType }{@code >}
  {@link JAXBElement }{@code <}{@link ArcByCenterPointType }{@code >}
  {@link JAXBElement }{@code <}{@link LineStringSegmentType }{@code >}
  {@link JAXBElement }{@code <}{@link BezierType }{@code >}
  {@link JAXBElement }{@code <}{@link BSplineType }{@code >}
  {@link JAXBElement }{@code <}{@link CircleType }{@code >}
  {@link JAXBElement }{@code <}{@link ArcType }{@code >}
  {@link JAXBElement }{@code <}{@link ArcStringType }{@code >}
  {@link JAXBElement }{@code <}{@link CubicSplineType }{@code >}
  {@link JAXBElement }{@code <}{@link ClothoidType }{@code >}
  {@link JAXBElement }{@code <}{@link AbstractCurveSegmentType }{@code >}