Packages

final case class DependenciesProperty(totalCount: BigInt = 0, counts: Map[String, BigInt] = Map.empty, cooccurrence: Map[(String, String), BigInt] = Map.empty, overloaded: Boolean = false) extends SchemaProperty[Map[String, JsonSchema[_]]] with Product with Serializable

Tracks dependencies between keys in an object schema.

totalCount

the total number of observed objects

counts

a map from keys to the number of times the key is present

cooccurrence

a map from pairs of keys to the number of times they cooccur

overloaded

whether this property is overloaded and stopped tracking

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DependenciesProperty
  2. Serializable
  3. Product
  4. Equals
  5. SchemaProperty
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new DependenciesProperty(totalCount: BigInt = 0, counts: Map[String, BigInt] = Map.empty, cooccurrence: Map[(String, String), BigInt] = Map.empty, overloaded: Boolean = false)

    Create a new dependencies property.

    Create a new dependencies property.

    totalCount

    the total number of observed objects

    counts

    a map from keys to the number of times the key is present

    cooccurrence

    a map from pairs of keys to the number of times they cooccur

    overloaded

    whether this property is overloaded and stopped tracking

Type Members

  1. type S = DependenciesProperty
    Definition Classes
    DependenciesPropertySchemaProperty

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  6. def collectAnomalies[S <: JValue](value: S, path: String)(implicit p: JsonoidParams, tag: ClassTag[S]): Seq[Anomaly]

    Find all possible anomalies for a value according to the current property

    Find all possible anomalies for a value according to the current property

    value

    the value to check for anomalies

    path

    the path of this property

    tag

    a captured ClassTag to use in the generated anomaly

    returns

    a list of collected anomalies

    Definition Classes
    DependenciesPropertySchemaProperty
  7. val cooccurrence: Map[(String, String), BigInt]
  8. val counts: Map[String, BigInt]
  9. def dependencyMap(includeEverywhere: Boolean = false): Map[String, Set[String]]
  10. def disjointSets: Seq[Set[String]]
    Annotations
    @SuppressWarnings()
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def expandTo(other: Option[DependenciesProperty]): DependenciesProperty

    Expand a property to cover another property

    Expand a property to cover another property

    other

    the other property to expand to

    returns

    this property expanded to cover the other property

    Definition Classes
    DependenciesPropertySchemaProperty
  13. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  14. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. def intersectMerge(prop: S)(implicit p: JsonoidParams): S

    Merge with another property using the intersect strategy

    Merge with another property using the intersect strategy

    For properties used in validation, the property should validate against the intersection of the values used to discover each property.

    prop

    the property to merge with

    p

    the JSONoid paramters

    returns

    the merged property

    Definition Classes
    SchemaProperty
  16. def isAnomalous[S <: JValue](value: S, path: String = "$")(implicit p: JsonoidParams, tag: ClassTag[S]): Boolean

    Whether a value should be considered anomalous according to the current property

    Whether a value should be considered anomalous according to the current property

    value

    the value to check

    path

    the path of this property

    tag

    a captured ClassTag used to collect anomalies

    Definition Classes
    SchemaProperty
  17. def isInformational: Boolean

    True if this property is for informational purposes only (not for validation), and false otherwise

    True if this property is for informational purposes only (not for validation), and false otherwise

    Definition Classes
    SchemaProperty
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. def isSubsetOf(other: DependenciesProperty, recursive: Boolean = true)(implicit p: JsonoidParams): Boolean

    Whether this property is compatible with another property

    Whether this property is compatible with another property

    For validation properties, this means that any value that is valid according to this property can *potentially* be valid according to the other property.

    Definition Classes
    DependenciesPropertySchemaProperty
  20. def mergeOnlySameType(prop: SchemaProperty[Map[String, JsonSchema[_]]], mergeType: MergeType)(implicit p: JsonoidParams): S
    Definition Classes
    SchemaProperty
  21. def mergeValue(value: Map[String, JsonSchema[_]])(implicit p: JsonoidParams): DependenciesProperty

    Update the property by merging in a single related value

    Update the property by merging in a single related value

    value

    the value to merge

    p

    the JSONoid parameters to use during merging

    returns

    an updated property with the merged value

    Definition Classes
    DependenciesPropertySchemaProperty
  22. def mergeable: Boolean

    Whether it is possible to merge this property

    Whether it is possible to merge this property

    returns

    true if the property is mergeable, false otherwise

    Definition Classes
    SchemaProperty
  23. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  24. def newDefault()(implicit p: JsonoidParams): DependenciesProperty

    Build a new instance of the property with default parameters

    Build a new instance of the property with default parameters

    p

    the JSONoid parameters to use during construction

    Definition Classes
    DependenciesPropertySchemaProperty
  25. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  26. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  27. def onlyKeys(keys: Set[String]): DependenciesProperty
  28. val overloaded: Boolean
  29. def productElementNames: Iterator[String]
    Definition Classes
    Product
  30. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  31. def toJson()(implicit p: JsonoidParams): JObject

    Produce a JSON representation of this property

    Produce a JSON representation of this property

    p

    the JSONoid parameters to use during converion

    Definition Classes
    DependenciesPropertySchemaProperty
  32. val totalCount: BigInt
  33. def transform(transformer: PartialFunction[(String, JsonSchema[_]), JsonSchema[_]], path: String): S

    Recursively transform properties nested under this property.

    Recursively transform properties nested under this property.

    This must be implemented for any property which contain schema objects Currently this is only these properties: * DynamicObjectTypeProperty in DynamicObjectSchema * ObjectTypesProperty in ObjectSchema * PatternTypesProperty in ObjectSchema * ItemTypeProperty in ArraySchema * ProductSchemaTypesProperty in ProductSchema

    transformer

    a function to be applied to recursively tranform properties

    path

    the path to the current property

    returns

    the recursively transformed property

    Definition Classes
    SchemaProperty
  34. def unionMerge(otherProp: DependenciesProperty)(implicit p: JsonoidParams): DependenciesProperty

    Merge with another property using the union strategy.

    Merge with another property using the union strategy.

    For properties used in validation, the property should validate against the union of the values used to discover each property.

    p

    the JSONoid paramters

    returns

    the merged property

    Definition Classes
    DependenciesPropertySchemaProperty
  35. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  36. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  37. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from SchemaProperty[Map[String, JsonSchema[_]]]

Inherited from AnyRef

Inherited from Any

Ungrouped