# Package org.apache.sis.metadata.iso.constraint

Information about legal and security constraints placed on data. An explanation for this package is provided in the OpenGIS® javadoc. The remaining discussion on this page is specific to the SIS implementation.
Overview
For a global overview of metadata in SIS, see the `org​.apache​.sis​.metadata` package javadoc.

Package overview
Class hierarchy | Aggregation hierarchy
--- | ---
ISO 19115 metadata `├─` Constraints `│ ├─` Legal constraints `│ └─` Security constraints `└─` Releasability Code list `├─` Restriction `└─` Classification | Constraints `└─` Releasability Legal constraints `└─` Restriction «code list» Security constraints `└─` Classification «code list»

Null values, nil objects and collections
All constructors and setter methods accept `null` arguments. A null argument value means that the metadata element can not be provided, and the reason for that is unspecified. Alternatively, users can specify why a metadata element is missing by providing a value created by `NilReason​.createNilObject(Class)`.

Unless otherwise noted in the Javadoc, all getter methods may return an empty collection, an empty array or `null` if the type is neither a collection or an array. Note that non-null values may be `NilObject`s.

Unless the metadata object has been marked as unmodifiable and unless otherwise noted in the Javadoc, all collections returned by getter methods are live: adding new elements in the collection modify directly the underlying metadata object.

Since:
  0.3

Defined in the `sis-metadata` module

- Class Summary
  Class | Description
  --- | ---
  DefaultConstraints | Restrictions on the access and use of a resource or metadata.
  DefaultLegalConstraints | Restrictions and legal prerequisites for accessing and using the resource.
  DefaultReleasability | Information about resource release constraints.
  DefaultSecurityConstraints | Handling restrictions imposed on the resource for national security or similar security concerns.