SchemaApi

trait SchemaApi

Purely abstract trait offering a schema API. It offers methods to regard a taxonomy as a collection of schema content, without any knowledge about XBRL in particular.

Purely abstract trait offering a schema API. It offers methods to regard a taxonomy as a collection of schema content, without any knowledge about XBRL in particular.

Implementations should make sure that looking up schema content by EName is fast. Lookup up global element declarations by URI must also be fast.

Only methods for querying "global" schema content are offered. The returned objects themselves can be used to query for nested content.

Authors

Chris de Vreeze

class Object
trait Matchable
class Any

Value members

Abstract methods

def findBaseTypeOrSelfUntil(typeEName: EName, p: EName => Boolean): Option[EName]

If the given type obeys the type predicate, returns it, wrapped in an Option. Otherwise, returns the optional base type if that type obeys the type predicate, and so on, until either the predicate holds or no further base type can be found in the taxonomy.

If the given type obeys the type predicate, returns it, wrapped in an Option. Otherwise, returns the optional base type if that type obeys the type predicate, and so on, until either the predicate holds or no further base type can be found in the taxonomy.

Finds the optional global element declaration having the given ID, assuming that at most one result matches.

Finds the optional global element declaration having the given ID, assuming that at most one result matches.

def findNamedTypeDefinition(ename: EName): Option[NamedTypeDefinition]
def findNamedTypeOfGlobalElementDeclaration(ename: EName): Option[EName]

Finds the named type of the global element declaration with the given target EName, recursively trying to obtain the type via the substitution group ancestry chain, if needed.

Finds the named type of the global element declaration with the given target EName, recursively trying to obtain the type via the substitution group ancestry chain, if needed.

Gets the global element declaration having the given ID, assuming that at precisely one result matches.

Gets the global element declaration having the given ID, assuming that at precisely one result matches.

Returns the known substitution groups as SubstitutionGroupMap. If the taxonomy is closed under DTS discovery, these substitution groups are found within the taxonomy. Otherwise they may partly be external.

Returns the known substitution groups as SubstitutionGroupMap. If the taxonomy is closed under DTS discovery, these substitution groups are found within the taxonomy. Otherwise they may partly be external.

Implementations should store this as a field, in order to make substitution group lookups as fast as possible.