001/*
002 * SPDX-FileCopyrightText: none
003 * SPDX-License-Identifier: CC0-1.0
004 */
005
006package dev.metaschema.core.model;
007
008import dev.metaschema.core.MetaschemaConstants;
009import dev.metaschema.core.model.constraint.IAllowedValuesConstraint;
010import dev.metaschema.core.model.constraint.ICardinalityConstraint;
011import dev.metaschema.core.model.constraint.IExpectConstraint;
012import dev.metaschema.core.model.constraint.IIndexConstraint;
013import dev.metaschema.core.model.constraint.IIndexHasKeyConstraint;
014import dev.metaschema.core.model.constraint.IMatchesConstraint;
015import dev.metaschema.core.model.constraint.IReportConstraint;
016import dev.metaschema.core.model.constraint.IUniqueConstraint;
017import dev.metaschema.core.qname.IEnhancedQName;
018import edu.umd.cs.findbugs.annotations.NonNull;
019
020/**
021 * Provides commonly used QName constants for Metaschema model elements.
022 */
023@SuppressWarnings("PMD.DataClass")
024public final class MetaschemaModelConstants {
025  /**
026   * The name of an {@link IAssemblyInstance} in the Metaschema model.
027   */
028  @NonNull
029  public static final IEnhancedQName ASSEMBLY_QNAME
030      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "assembly");
031
032  /**
033   * The name of an inline {@link IAssemblyDefinition} in the Metaschema model.
034   */
035  @NonNull
036  public static final IEnhancedQName DEFINE_ASSEMBLY_QNAME
037      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "define-assembly");
038
039  /**
040   * The name of an {@link IFieldInstance} in the Metaschema model.
041   */
042  @NonNull
043  public static final IEnhancedQName FIELD_QNAME
044      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "field");
045
046  /**
047   * The name of an inline {@link IFieldDefinition} in the Metaschema model.
048   */
049  @NonNull
050  public static final IEnhancedQName DEFINE_FIELD_QNAME
051      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "define-field");
052
053  /**
054   * The name of an {@link IFlagInstance} in the Metaschema model.
055   */
056  @NonNull
057  public static final IEnhancedQName FLAG_QNAME
058      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "flag");
059
060  /**
061   * The name of an inline {@link IFlagDefinition} in the Metaschema model.
062   */
063  @NonNull
064  public static final IEnhancedQName DEFINE_FLAG_QNAME
065      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "define-flag");
066
067  /**
068   * The name of an {@link IChoiceInstance} in the Metaschema model.
069   */
070  @NonNull
071  public static final IEnhancedQName CHOICE_QNAME
072      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "choice");
073
074  /**
075   * The name of an {@link IChoiceGroupInstance} in the Metaschema model.
076   */
077  @NonNull
078  public static final IEnhancedQName CHOICE_GROUP_QNAME
079      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "choice-group");
080
081  /**
082   * The name of the element that identifies the model of an
083   * {@link IAssemblyDefinition} in the Metaschema model.
084   */
085  @NonNull
086  public static final IEnhancedQName MODEL_QNAME
087      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "model");
088
089  /**
090   * The name of an {@link IAllowedValuesConstraint} constraint in the Metaschema
091   * model.
092   */
093  @NonNull
094  public static final IEnhancedQName ALLOWED_VALUES_CONSTRAINT_QNAME
095      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "allowed-values");
096
097  /**
098   * The name of an {@link IIndexHasKeyConstraint} constraint in the Metaschema
099   * model.
100   */
101  @NonNull
102  public static final IEnhancedQName INDEX_HAS_KEY_CONSTRAINT_QNAME
103      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "index-has-key");
104
105  /**
106   * The name of an {@link IMatchesConstraint} constraint in the Metaschema model.
107   */
108  @NonNull
109  public static final IEnhancedQName MATCHES_CONSTRAINT_QNAME
110      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "matches");
111
112  /**
113   * The name of an {@link IExpectConstraint} constraint in the Metaschema model.
114   */
115  @NonNull
116  public static final IEnhancedQName EXPECT_CONSTRAINT_QNAME
117      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "expect");
118
119  /**
120   * The name of an {@link IReportConstraint} constraint in the Metaschema model.
121   */
122  @NonNull
123  public static final IEnhancedQName REPORT_CONSTRAINT_QNAME
124      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "report");
125
126  /**
127   * The name of an {@link IIndexConstraint} constraint in the Metaschema model.
128   */
129  @NonNull
130  public static final IEnhancedQName INDEX_CONSTRAINT_QNAME
131      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "index");
132
133  /**
134   * The name of an {@link IUniqueConstraint} constraint in the Metaschema model.
135   */
136  @NonNull
137  public static final IEnhancedQName IS_UNIQUE_CONSTRAINT_QNAME
138      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "is-unique");
139
140  /**
141   * The name of an {@link ICardinalityConstraint} constraint in the Metaschema
142   * model.
143   */
144  @NonNull
145  public static final IEnhancedQName HAS_CARDINALITY_CONSTRAINT_QNAME
146      = IEnhancedQName.of(MetaschemaConstants.METASCHEMA_NAMESPACE, "has-cardinality");
147
148  private MetaschemaModelConstants() {
149    // disable construction
150  }
151}