# IDataSource.New()

Description:

The `New` method creates an empty landmark or landmark category item. You can use the new item as a template.

This is a synchronous method.

Syntax:

    result = so.IDataSource.New(criteria);

Arguments:

- `criteria`:

  This is an object that specifies the type of item to create. The following table describes the properties of this object.

Table: Criteria object properties
Property | Description | Value
--- | --- | ---
`criteria.Type` | This is a text string that specifies the type of item to create. | Possible values: `"Landmark"` `"Category"`

Return value:

The `New` method returns an object that contains the empty item that it created, an error code, and an error message.

Table: Return value properties for New
Property | Description | Value
--- | --- | ---
`result.ReturnValue` | This is an object that contains the empty landmark or landmark category item. | See Landmark or Landmark category, depending on which type of item was created.
`result.ErrorCode` | This is a number that specifies a predefined error code. | See Service API error codes.
`result.ErrorMessage` | This is a text string that describes the error. | See Landmarks Service API error messages.

Example code:

For the complete source of a sample widget that demonstrates how to use this Service API, see the full example.