001/*
002 * SPDX-FileCopyrightText: none
003 * SPDX-License-Identifier: CC0-1.0
004 */
005
006package dev.metaschema.core;
007
008import java.net.URI;
009
010import dev.metaschema.core.util.ObjectUtils;
011import edu.umd.cs.findbugs.annotations.NonNull;
012
013/**
014 * A collection of constant values related to Metaschema handling.
015 */
016public final class MetaschemaConstants {
017  /**
018   * This is the namespace used by Metaschema in formats that require or use a
019   * namespace, and in properties that are defined by the Metaschema
020   * specification.
021   */
022  @NonNull
023  public static final String METASCHEMA_NAMESPACE = "http://csrc.nist.gov/ns/oscal/metaschema/1.0";
024
025  /**
026   * The {@link #METASCHEMA_NAMESPACE} as a {@link URI}.
027   */
028  @NonNull
029  public static final URI METASCHEMA_NAMESPACE_URI = ObjectUtils.notNull(URI.create(METASCHEMA_NAMESPACE));
030
031  private MetaschemaConstants() {
032    // disable construction
033  }
034}