Trait

org.apache.daffodil.dsom

AnnotatedSchemaComponent

Related Doc: package dsom

Permalink

trait AnnotatedSchemaComponent extends SchemaComponent with AnnotatedMixin with OverlapCheckMixin

Shared characteristics of any annotated schema component.

Not all components can carry DFDL annotations.

Linear Supertypes
OverlapCheckMixin, AnnotatedMixin, SchemaComponent, PropTypes, SchemaFileLocatableImpl, SchemaFileLocatable, HasSchemaFileLocation, LookupLocation, LocationInSchemaFile, SchemaComponentIncludesAndImportsMixin, CommonContextMixin, NestingMixin, GetAttributesMixin, BasicComponent, ImplementsThrowsOrSavesSDE, SavesErrorsAndWarnings, ImplementsThrowsSDE, ResolvesQNames, ThrowsSDE, HasTunable, OOLAGHost, NamedMixinBase, WithDiagnostics, Logging, Identity, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AnnotatedSchemaComponent
  2. OverlapCheckMixin
  3. AnnotatedMixin
  4. SchemaComponent
  5. PropTypes
  6. SchemaFileLocatableImpl
  7. SchemaFileLocatable
  8. HasSchemaFileLocation
  9. LookupLocation
  10. LocationInSchemaFile
  11. SchemaComponentIncludesAndImportsMixin
  12. CommonContextMixin
  13. NestingMixin
  14. GetAttributesMixin
  15. BasicComponent
  16. ImplementsThrowsOrSavesSDE
  17. SavesErrorsAndWarnings
  18. ImplementsThrowsSDE
  19. ResolvesQNames
  20. ThrowsSDE
  21. HasTunable
  22. OOLAGHost
  23. NamedMixinBase
  24. WithDiagnostics
  25. Logging
  26. Identity
  27. AnyRef
  28. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type PropItem = (String, (String, LookupLocation))

    Permalink
    Definition Classes
    PropTypes
  2. type PropMap = Map[String, (String, LookupLocation)]

    Permalink
    Definition Classes
    PropTypes

Abstract Value Members

  1. abstract def annotationFactory(node: Node): Option[DFDLAnnotation]

    Permalink

    Anything annotated must be able to construct the appropriate DFDLAnnotation object from the xml.

    Anything annotated must be able to construct the appropriate DFDLAnnotation object from the xml.

    Attributes
    protected
    Definition Classes
    AnnotatedMixin
  2. abstract def emptyFormatFactory: DFDLFormatAnnotation

    Permalink

    Here we establish an invariant which is that every annotatable schema component has, definitely, has an annotation object.

    Here we establish an invariant which is that every annotatable schema component has, definitely, has an annotation object. It may have no properties on it, but it will be there. Hence, we can delegate various property-related attribute calculations to it.

    To realize this, every concrete class must implement (or inherit) an implementation of emptyFormatFactory, which constructs an empty format annotation, and isMyFormatAnnotation which tests if an annotation is the corresponding kind.

    Given that, formatAnnotation then either finds the right annotation, or constructs one, but our invariant is imposed. There *is* a formatAnnotation.

    Attributes
    protected
    Definition Classes
    AnnotatedMixin
  3. abstract def enclosingComponentDef: Option[SchemaComponent]

    Permalink

    Define this for schema components that have back-references to ref objects.

    Define this for schema components that have back-references to ref objects. So group def to group ref, globalelementdecl to element ref, type to element, base type to derived type.

    Not for format annotations however. We don't backpoint those to other format annotations that ref them.

    Attributes
    protected
    Definition Classes
    NestingMixin
  4. abstract def enclosingComponentDefs: Seq[EnclosingComponentDef]

    Permalink
    Attributes
    protected
    Definition Classes
    NestingMixin
  5. abstract def isMyFormatAnnotation(a: DFDLAnnotation): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    AnnotatedMixin
  6. abstract def optLexicalParent: Option[SchemaComponent]

    Permalink
    Definition Classes
    SchemaFileLocatableImpl
  7. abstract def optReferredToComponent: Option[AnnotatedSchemaComponent]

    Permalink
    Attributes
    protected
  8. abstract def xml: Node

    Permalink
    Definition Classes
    SchemaComponentSchemaFileLocatableImplCommonContextMixin → GetAttributesMixin

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def LV[T](sym: Symbol)(body: ⇒ T): OOLAGValue[T]

    Permalink
    Attributes
    protected
    Definition Classes
    OOLAGHost
  5. def NoAnnotationContext: Option[SchemaFileLocation]

    Permalink
    Definition Classes
    ImplementsThrowsSDE
  6. def SDE(id: String, args: Any*): Nothing

    Permalink
    Definition Classes
    ImplementsThrowsSDE → ThrowsSDE
  7. final def SDE(th: Throwable): Nothing

    Permalink
    Definition Classes
    ThrowsSDE
  8. def SDEButContinue(id: String, args: Any*): Unit

    Permalink
    Definition Classes
    ImplementsThrowsOrSavesSDE → SavesErrorsAndWarnings
  9. def SDW(warnID: WarnID, fmt: String, args: Any*): Unit

    Permalink
    Definition Classes
    ImplementsThrowsOrSavesSDE → SavesErrorsAndWarnings
  10. def ThrowSDE: PartialFunction[Throwable, Nothing]

    Permalink
    Definition Classes
    ThrowsSDE
  11. final lazy val annotationObjs: Seq[DFDLAnnotation]

    Permalink

    The DFDL annotations on the component, as objects that are subtypes of DFDLAnnotation.

    The DFDL annotations on the component, as objects that are subtypes of DFDLAnnotation.

    Definition Classes
    AnnotatedMixin
  12. final def areLogging(lvl: Type): Boolean

    Permalink
    Definition Classes
    Logging
  13. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  14. final def assuming(pred: Boolean): Unit

    Permalink
    Definition Classes
    OOLAGHost
  15. final def checkErrors: Unit

    Permalink
    Definition Classes
    OOLAGHost
  16. final def checkNonOverlap(providers: Seq[ChainPropProvider]): Unit

    Permalink

    check for overlap.

    check for overlap.

    Attributes
    protected
    Definition Classes
    OverlapCheckMixin
  17. final def ci: DPathCompileInfo

    Permalink

    Abbreviation.

    Abbreviation. We use this very often.

    Definition Classes
    SchemaComponent
  18. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final lazy val columnAttribute: Option[String]

    Permalink
    Definition Classes
    SchemaFileLocatableImpl → SchemaFileLocatable
  20. lazy val columnDescription: String

    Permalink
    Definition Classes
    SchemaFileLocatable → HasSchemaFileLocation → LocationInSchemaFile
  21. lazy val columnNumber: Option[String]

    Permalink
    Definition Classes
    SchemaFileLocatable
  22. final var currentOVList: Seq[OOLAGValueBase]

    Permalink
    Definition Classes
    OOLAGHost
  23. def dafAttributes(n: Node): MetaData

    Permalink
    Definition Classes
    GetAttributesMixin
  24. final lazy val defaultFormatChain: ChainPropProvider

    Permalink
    Attributes
    protected
  25. final lazy val defaultPropertySources: Seq[ChainPropProvider]

    Permalink
    Attributes
    protected
  26. lazy val dfdlAppInfos: NodeSeq

    Permalink
    Definition Classes
    AnnotatedMixin
  27. def dfdlAttributes(n: Node): MetaData

    Permalink
    Definition Classes
    GetAttributesMixin
  28. def dfdlxAttributes(n: Node): MetaData

    Permalink
    Definition Classes
    GetAttributesMixin
  29. lazy val diagnosticDebugName: String

    Permalink
    Definition Classes
    NamedMixinBase
  30. def diagnostics: Seq[Diagnostic]

    Permalink
    Definition Classes
    OOLAGHost
  31. def doLogging(lvl: Type, msg: String, args: Seq[Any]): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  32. lazy val dpathCompileInfo: DPathCompileInfo

    Permalink
    Definition Classes
    SchemaComponent
  33. val emptyPropMap: PropMap

    Permalink
    Definition Classes
    PropTypes
  34. final lazy val enclosingComponent: Option[SchemaComponent]

    Permalink

    The enclosing component, and follows back-references from types to their elements, from globalElementDef to elementRefs, from simpleType defs to derived simpletype defs, from global group defs to group refs

    The enclosing component, and follows back-references from types to their elements, from globalElementDef to elementRefs, from simpleType defs to derived simpletype defs, from global group defs to group refs

    Note: the enclosing component of a global element or global group referenced from a element ref or group ref, is NOT the ref object, but the component that contains the ref object

    Definition Classes
    NestingMixin
  35. final lazy val enclosingComponents: Seq[EnclosingComponentDef]

    Permalink
    Definition Classes
    NestingMixin
  36. final lazy val enclosingElement: Option[ElementBase]

    Permalink

    All schema components except the root have an enclosing element.

    All schema components except the root have an enclosing element.

    Definition Classes
    SchemaComponent
  37. final lazy val enclosingElements: Seq[ElementBase]

    Permalink

    Elements that enclose this.

    Elements that enclose this.

    If this is already an element, this still walks outward to find the next tier out.

    Definition Classes
    SchemaComponent
  38. final lazy val enclosingTerm: Option[Term]

    Permalink
    Definition Classes
    SchemaComponent
  39. final lazy val enclosingTerms: Seq[Term]

    Permalink

    The terms that can enclose this.

    The terms that can enclose this.

    Even if this is already a term, this walks outward to find those enclosing this.

    Definition Classes
    SchemaComponent
  40. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  41. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  42. def error(th: Diagnostic): Unit

    Permalink
    Definition Classes
    OOLAGHost
  43. final def errors: Seq[Diagnostic]

    Permalink
    Definition Classes
    OOLAGHost
  44. final lazy val fileAttribute: Option[String]

    Permalink
    Definition Classes
    SchemaFileLocatableImpl → SchemaFileLocatable
  45. lazy val fileDescription: String

    Permalink
    Definition Classes
    SchemaFileLocatable → HasSchemaFileLocation → LocationInSchemaFile
  46. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  47. final lazy val formatAnnotation: DFDLFormatAnnotation

    Permalink
    Definition Classes
    AnnotatedMixin
  48. final lazy val formatAnnotationExpectedName: String

    Permalink
    Definition Classes
    AnnotatedMixin
  49. def getAttributeOption(ns: NS, name: String): Option[String]

    Permalink
    Definition Classes
    GetAttributesMixin
  50. def getAttributeOption(name: String): Option[String]

    Permalink
    Definition Classes
    GetAttributesMixin
  51. def getAttributeRequired(name: String): String

    Permalink
    Definition Classes
    GetAttributesMixin
  52. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  53. def getDiagnostics: Seq[Diagnostic]

    Permalink
    Definition Classes
    OOLAGHost → WithDiagnostics
  54. def getLogWriter(): LogWriter

    Permalink
    Definition Classes
    Logging
  55. final def getLoggingLevel(): Type

    Permalink
    Definition Classes
    Logging
  56. final def hasOOLAGRootSetup: Boolean

    Permalink
    Definition Classes
    OOLAGHost
  57. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  58. def isError: Boolean

    Permalink
    Definition Classes
    OOLAGHost → WithDiagnostics
  59. def isHidden: Boolean

    Permalink

    Whether the component is hidden.

    Whether the component is hidden.

    Override this in the components that can hide - SequenceGroupRef and ChoiceGroupRef

    Definition Classes
    SchemaComponent
  60. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  61. lazy val lineAttribute: Option[String]

    Permalink

    Annotations can contain expressions, so we need to be able to compile them.

    Annotations can contain expressions, so we need to be able to compile them.

    We need our own instance so that the expression compiler has this schema component as its context.

    Definition Classes
    SchemaFileLocatableImpl → SchemaFileLocatable
  62. lazy val lineDescription: String

    Permalink
    Definition Classes
    SchemaFileLocatable → HasSchemaFileLocation → LocationInSchemaFile
  63. lazy val lineNumber: Option[String]

    Permalink
    Definition Classes
    SchemaFileLocatable
  64. lazy val locationDescription: String

    Permalink
    Definition Classes
    SchemaFileLocatable → HasSchemaFileLocation → LocationInSchemaFile
  65. final macro def log(lvl: Type, msg: String, args: Any*): Unit

    Permalink
    Definition Classes
    Logging
  66. lazy val logID: String

    Permalink
    Definition Classes
    Logging → Identity
  67. var logLevel: Maybe[Type]

    Permalink
    Definition Classes
    Logging
  68. var logWriter: Maybe[LogWriter]

    Permalink
    Definition Classes
    Logging
  69. def nArgs: Args

    Permalink
    Attributes
    protected
    Definition Classes
    OOLAGHost
  70. final lazy val namespaces: NamespaceBinding

    Permalink

    Namespace scope for resolving QNames.

    Namespace scope for resolving QNames.

    We insist that the prefix "xsi" is properly defined for use in xsi:nil attributes, which is how we represent nilled elements when we convert to XML.

    Definition Classes
    CommonContextMixin
  71. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  72. final def newDFDLAnnotationXML(label: String): Elem

    Permalink

    Used as factory for the XML Node with the right namespace and prefix etc.

    Used as factory for the XML Node with the right namespace and prefix etc.

    Given "element" it creates <dfdl:element /> with the namespace definitions based on this schema component's corresponding XSD construct.

    Makes sure to inherit the scope so we have all the namespace bindings.

    Attributes
    protected
    Definition Classes
    SchemaComponent
  73. final lazy val nonDefaultFormatChain: ChainPropProvider

    Permalink
    Attributes
    protected
  74. lazy val nonDefaultPropertySources: Seq[ChainPropProvider]

    Permalink
  75. final def nonTermRuntimeData: NonTermRuntimeData

    Permalink
    Definition Classes
    SchemaComponent
  76. final def notYetImplemented(msg: String, args: Any*): Nothing

    Permalink
    Definition Classes
    ThrowsSDE
  77. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  78. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  79. final lazy val oolagContext: OOLAGHost

    Permalink
    Definition Classes
    OOLAGHost
  80. def oolagContextViaArgs: Option[SchemaComponent]

    Permalink
    Definition Classes
    SchemaComponent → OOLAGHost
  81. def oolagError(th: Diagnostic): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    OOLAGHost
  82. final def oolagParent: OOLAGHost

    Permalink
    Attributes
    protected
    Definition Classes
    OOLAGHost
  83. def oolagWarn(th: Diagnostic): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    OOLAGHost
  84. final lazy val optOolagContext: Option[OOLAGHost]

    Permalink
    Definition Classes
    OOLAGHost
  85. final val orElseURL: String

    Permalink
    Attributes
    protected
    Definition Classes
    SchemaComponentIncludesAndImportsMixin
  86. lazy val path: String

    Permalink

    path is used in diagnostic messages and code debug messages; hence, it is very important that it be very dependable.

    path is used in diagnostic messages and code debug messages; hence, it is very important that it be very dependable.

    Definition Classes
    SchemaComponent → OOLAGHost
  87. def qNameForProperty(local: String, ns: NS): GlobalQName

    Permalink
    Definition Classes
    ResolvesQNames
  88. final def refersToForPropertyCombining: Option[AnnotatedSchemaComponent]

    Permalink

    For property combining only.

    For property combining only. E.g., doesn't refer from an element to its complex type because we don't combine properties with that in DFDL v1.0. (I consider that a language design bug in DFDL v1.0, but that is the way it's defined.)

    Attributes
    protected
  89. def removePrefix(prefixedValue: String): String

    Permalink
    Definition Classes
    ResolvesQNames
  90. final def requiredEvaluations(lv: OOLAGValueBase): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    OOLAGHost
  91. final def requiredEvaluations(arg: ⇒ Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    OOLAGHost
  92. def resolveQName(qnString: String): RefQName

    Permalink
    Definition Classes
    ResolvesQNames
  93. lazy val runtimeData: RuntimeData

    Permalink

    All non-terms get runtimeData from this definition.

    All non-terms get runtimeData from this definition. All Terms which are elements and model-groups) override this.

    The Term class has a generic termRuntimeData => TermRuntimeData function (useful since all Terms share things like having charset encoding) The Element classes all inherit an elementRuntimeData => ElementRuntimeData and the model groups all have modelGroupRuntimeData => ModelGroupRuntimeData.

    There is also VariableRuntimeData and SchemaSetRuntimeData.

    Definition Classes
    SchemaComponent
  94. lazy val schema: Schema

    Permalink
    Definition Classes
    CommonContextMixin
  95. lazy val schemaComponent: LookupLocation

    Permalink
    Definition Classes
    SchemaComponent
  96. final def schemaDefinitionError(str: String, args: Any*): Nothing

    Permalink
    Definition Classes
    ThrowsSDE
  97. def schemaDefinitionErrorButContinue(str: String, args: Any*): Unit

    Permalink
    Definition Classes
    SavesErrorsAndWarnings
  98. def schemaDefinitionErrorDueToPropertyValue(propertyName: String, propertyValue: String, propertyLocation: LookupLocation, otherPropertyLocation: LookupLocation, str: String, args: Any*): Nothing

    Permalink
    Definition Classes
    SavesErrorsAndWarnings
  99. final macro def schemaDefinitionUnless(testThatWillThrowIfFalse: Boolean, str: String, args: Any*): Unit

    Permalink
    Definition Classes
    ThrowsSDE
  100. macro def schemaDefinitionWarningUnless(warnID: WarnID, testThatWillWarnIfFalse: Boolean, str: String, args: Any*): Unit

    Permalink
    Definition Classes
    SavesErrorsAndWarnings
  101. macro def schemaDefinitionWarningWhen(warnID: WarnID, testThatWillWarnIfTrue: Boolean, str: String, args: Any*): Unit

    Permalink
    Definition Classes
    SavesErrorsAndWarnings
  102. final macro def schemaDefinitionWhen(testThatWillThrowIfTrue: Boolean, str: String, args: Any*): Unit

    Permalink
    Definition Classes
    ThrowsSDE
  103. def schemaDocument: SchemaDocument

    Permalink
    Definition Classes
    CommonContextMixin
  104. lazy val schemaFile: Option[DFDLSchemaFile]

    Permalink
    Definition Classes
    CommonContextMixin
  105. lazy val schemaFileLocation: SchemaFileLocation

    Permalink
    Definition Classes
    SchemaFileLocatable → HasSchemaFileLocation → ThrowsSDE
  106. lazy val schemaSet: SchemaSet

    Permalink
    Definition Classes
    CommonContextMixin
  107. def setLogWriter(lw: LogWriter): Unit

    Permalink
    Definition Classes
    Logging
  108. def setLoggingLevel(level: Type): Unit

    Permalink
    Definition Classes
    Logging
  109. final def setOOLAGContext(oolagContextArg: OOLAGHost): Unit

    Permalink
    Definition Classes
    OOLAGHost
  110. lazy val shortSchemaComponentDesignator: String

    Permalink
    Definition Classes
    SchemaComponentNestingMixin
  111. final lazy val slashPath: String

    Permalink

    Elements only e.g., /foo/ex:bar

    Elements only e.g., /foo/ex:bar

    Definition Classes
    SchemaComponent
  112. def subset(testThatWillThrowIfFalse: Boolean, msg: String, args: Any*): Unit

    Permalink
    Definition Classes
    ImplementsThrowsOrSavesSDE
  113. def subsetError(msg: String, args: Any*): Nothing

    Permalink
    Definition Classes
    ImplementsThrowsOrSavesSDE
  114. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  115. def targetNamespace: NS

    Permalink

    This is the root, or basic target namespace.

    This is the root, or basic target namespace. Every schema component gets its target namespace from its xmlSchemaDocument.

    Definition Classes
    CommonContextMixin
  116. final lazy val targetNamespacePrefix: String

    Permalink
    Definition Classes
    CommonContextMixin
  117. def toString(): String

    Permalink
    Definition Classes
    SchemaComponent → AnyRef → Any
  118. final def toss(th: Throwable): Nothing

    Permalink
    Definition Classes
    ThrowsSDE
  119. lazy val tunable: DaffodilTunables

    Permalink
    Definition Classes
    SchemaComponent → ImplementsThrowsOrSavesSDE → HasTunable
  120. final lazy val unqualifiedPathStepPolicy: UnqualifiedPathStepPolicy

    Permalink
    Definition Classes
    SchemaComponent → ResolvesQNames
  121. def uriString: String

    Permalink

    Used in diagnostic messages; hence, valueOrElse to avoid problems when this can't get a value due to an error.

    Used in diagnostic messages; hence, valueOrElse to avoid problems when this can't get a value due to an error.

    Definition Classes
    SchemaComponentIncludesAndImportsMixinCommonContextMixin
  122. lazy val uriStringFromAttribute: Option[String]

    Permalink
    Definition Classes
    SchemaFileLocatable
  123. def variableMap: VariableMap

    Permalink
    Definition Classes
    SchemaComponent
  124. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  125. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  126. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  127. def warn(th: Diagnostic): Unit

    Permalink
    Definition Classes
    OOLAGHost
  128. final def warnings: Seq[Diagnostic]

    Permalink
    Definition Classes
    OOLAGHost
  129. macro def withLoggingLevel[S](newLevel: Type)(body: ⇒ S): Unit

    Permalink
    Definition Classes
    Logging
  130. lazy val xmlSchemaDocument: XMLSchemaDocument

    Permalink
    Definition Classes
    CommonContextMixin

Inherited from OverlapCheckMixin

Inherited from AnnotatedMixin

Inherited from SchemaComponent

Inherited from PropTypes

Inherited from SchemaFileLocatableImpl

Inherited from SchemaFileLocatable

Inherited from HasSchemaFileLocation

Inherited from LookupLocation

Inherited from LocationInSchemaFile

Inherited from CommonContextMixin

Inherited from NestingMixin

Inherited from GetAttributesMixin

Inherited from BasicComponent

Inherited from ImplementsThrowsOrSavesSDE

Inherited from SavesErrorsAndWarnings

Inherited from ImplementsThrowsSDE

Inherited from ResolvesQNames

Inherited from ThrowsSDE

Inherited from HasTunable

Inherited from OOLAGHost

Inherited from NamedMixinBase

Inherited from WithDiagnostics

Inherited from Logging

Inherited from Identity

Inherited from AnyRef

Inherited from Any

Ungrouped