Interface ExtensionDefinition

All Superinterfaces:
BundleableObject, Serializable, Stix, StixCustomProperties
All Known Implementing Classes:
ExtensionDefinitionObject

@Immutable @DefaultTypeValue(value="extension-definition", groups=DefaultValuesProcessor.class) @Redactable public interface ExtensionDefinition extends Serializable, BundleableObject, StixCustomProperties, Stix
extension-definition

The Extension Definition object defines new STIX extensions that can be used to characterize additional properties and behaviors beyond what is defined in the base STIX specification.

  • Method Details

    • getType

      @NotBlank @JsonPropertyDescription("The type property identifies the type of STIX Object. The value must be \'extension-definition\'.") @Pattern(regexp="^extension-definition$") default @NotBlank @Pattern(regexp="^extension-definition$") String getType()
      Specified by:
      getType in interface BundleableObject
    • getId

      @NotBlank @JsonPropertyDescription("Specifies the identifier for this Extension Definition object.") @Pattern(regexp="^extension-definition--") @NotBlank @Pattern(regexp="^extension-definition--") String getId()
      Specified by:
      getId in interface BundleableObject
    • getSpecVersion

      @JsonPropertyDescription("The version of the STIX specification used to represent this object.") @NotNull @Default default @NotNull String getSpecVersion()
    • getCreatedByRef

      @JsonPropertyDescription("The ID of the identity that created this extension definition.") Optional<String> getCreatedByRef()
    • getCreated

      @NotNull @JsonPropertyDescription("The created property represents the time at which this object was originally created.") @NotNull StixInstant getCreated()
    • getModified

      @NotNull @JsonPropertyDescription("The modified property represents the time at which this object was last modified.") @NotNull StixInstant getModified()
    • getRevoked

      @JsonPropertyDescription("The revoked property is a boolean that indicates whether the object has been revoked.") Optional<Boolean> getRevoked()
    • getLabels

      @JsonPropertyDescription("The labels property specifies a set of categorization labels.") Set<String> getLabels()
    • getConfidence

      @JsonPropertyDescription("The confidence property identifies the confidence that the creator has in the correctness of their data.") Optional<Integer> getConfidence()
    • getExternalReferences

      @JsonPropertyDescription("A list of external references which refer to non-STIX information.") Set<ExternalReferenceType> getExternalReferences()
    • getObjectMarkingRefs

      @JsonPropertyDescription("The list of marking-definition objects to be applied to this object.") Set<MarkingDefinitionDm> getObjectMarkingRefs()
      Specified by:
      getObjectMarkingRefs in interface BundleableObject
    • getGranularMarkings

      @JsonPropertyDescription("The set of granular markings that apply to this object.") Set<GranularMarkingDm> getGranularMarkings()
      Specified by:
      getGranularMarkings in interface BundleableObject
    • getName

      @NotBlank @JsonPropertyDescription("The name of this extension.") @Redactable @NotBlank String getName()
    • getDescription

      @JsonPropertyDescription("A detailed description of this extension.") @Redactable Optional<String> getDescription()
    • getSchema

      @NotNull @JsonPropertyDescription("The JSON schema for this extension.") @NotNull Map<String,Object> getSchema()
    • getVersion

      @NotBlank @JsonPropertyDescription("The version of this extension.") @NotBlank String getVersion()
    • getExtensionTypes

      @NotNull @JsonPropertyDescription("A list of the types of STIX Objects that this extension can be applied to.") @NotNull Set<String> getExtensionTypes()
    • getExtensionProperties

      @JsonPropertyDescription("The list of properties that this extension adds to the objects it extends.") Set<String> getExtensionProperties()