com.ihr.xbrl.om.instance

## Class XBRLFactNonNumeric

- java.lang.Object
- - com.ihr.xbrl.om.XMLFragment
  - - com.ihr.xbrl.om.instance.XBRLFact
    - - com.ihr.xbrl.om.instance.XBRLFactItem
      - - com.ihr.xbrl.om.instance.XBRLFactNonNumeric

- All Implemented Interfaces:
    HasAdditionalEqualityForReassignation, ObtainHistoryInterface, StoreHistoryInterface, XBRLRelationshipPoint, Thinable, XBRLValidation, XMLHasParent, java.lang.Cloneable, javax.xml.namespace.NamespaceContext

      public class XBRLFactNonNumeric
      extends XBRLFactItem
      implements HasAdditionalEqualityForReassignation

  This object represents a non numeric fact value in an instance document. Non numeric facts can be created from an application or from an instance document. Nil non numeric facts can be created by instantiating an object of this class and callling setNil(true) later.
  Author:
    Ignacio

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.ihr.xbrl.om.XBRLValidation

      `XBRLValidation.Direction`

  - ### Field Summary

    - ### Fields inherited from class com.ihr.xbrl.om.instance.XBRLFactItem

      `contextRef`

    - ### Fields inherited from class com.ihr.xbrl.om.instance.XBRLFact

      `nil`

    - ### Fields inherited from class com.ihr.xbrl.om.XMLFragment

      `CONCEPT_LABEL, CONCEPT_QNAME, EASY_TO_READ, ELEMENT_LABEL, EMPTYRELATIONSHIPSITERATORINSTANCE, EMPTYXMLFRAGMENTITERATORINSTANCE, FACT_CONCEPT_DATATYPE, FACT_CONCEPT_LABEL, FACT_QNAME, HIDE_COMMON_ACCURACY, idQName, NO_POSITION, OrderComparator, OrderComparator2, PERIOD_TYPE, PERIOD_VALUE, SHORT_TEXT, SOURCE_DOCUMENT, XPATH, XPOINTER`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XBRLFactNonNumeric(XBRLFactsList container, XBRLContext context, XBRLItem item)` Creates a fact for non numeric valus and adds it to the container object.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `XBRLFactNonNumeric` | `clone()`
    `XBRLFactNonNumeric` | `clone(DTSContainer newDTS)` Clone current fact but in a new DTSContainer.
    `org.jdom.Element` | `generateNode(boolean relativize, java.net.URI base)` Generates the XBRLFactItem jdom node.
    `java.lang.String` | `getFriendlyName()` Returns a string description that represents the element content in a form that users can understand.
    `java.lang.String` | `getFriendlyName(int modifiers, LabelsProvider lp)` Gets the friendly name.
    `boolean` | `isDuplicate(XBRLFact otherFact)` Check if two items are duplicates as defined in the XBRL 2.1 specification
    `boolean` | `isDuplicate(XBRLFactItem otherFact, boolean reversePEqual)` For internal purposes only during the calculation of isDuplicate of tuple children elements.
    `boolean` | `isEncodedHTML()` Evaluate if the content of this non numeric fact is an HTML string or plain text.
    `boolean` | `resolve_equal2(net.sf.saxon.s9api.XdmNode otherXdmNode)` resolves content that is added by this XMLFragment during XMLNode serialization and may not be available to the lower levels in the hierarchy.
    `boolean` | `uEqual(XBRLFactItem toFact)` Check if two items are unit equal as defined in the XBRL 2.1 specification
    `boolean` | `vEqual(XBRLFactItem toFact)` Check if two items are value equal as defined in the XBRL 2.1 specification

    - ### Methods inherited from class com.ihr.xbrl.om.instance.XBRLFactItem

      `cEqual, clear, createItemInstance, createItemInstance, createItemInstance, equals, getAttributes, getContext, getDocumentURI, getElementDefinition, getStringValue, hashCode, isBlank, isDescendantOrSibling, s_equal2, setBlank, setContext, setValue, setValue`

    - ### Methods inherited from class com.ihr.xbrl.om.instance.XBRLFact

      `addEvent, addEvent, addEvent, createItemOrTupleInstance, createItemOrTupleInstance, generateLocatorToNode, getElements, getHistory, getHistoryAsString, getInstance, getParent, getTaxonomy, getValidationReport, getXPathToRoot, invalidate, invalidate, isNil, isOnValidation, pEqual, setId, setNil, setParent, validate`

    - ### Methods inherited from class com.ihr.xbrl.om.XMLFragment

      `addAttribute, addChild, addFromRelationship, addNamespace, addNamespace, addToRelationship, addXMLChild, changeBase, checkBase, delAttribute, delAttribute, equalXdmValues, evaluateBoolean, evaluateList, evaluateNode, evaluateNumber, evaluateString, generateId, generateNodeNamespacesAndAttributes, generateNodeValue, generatePrefix, getAllAttributes, getAttribute, getAttributeBooleanValue, getAttributeQNameValue, getAttributes, getAttributeStringValue, getAttributeValue, getBase, getBase, getBaseURI, getBooleanValue, getChild, getContainer, getContainerDocumentURI, getDeclaredNamespaces, getDocument, getElementsHashCode, getFragment, getFromRelationships, getFromRelationships, getFromRelationships, getFromRelationships, getFromRelationships, getGenericLabelText, getId, getLang, getNamespaceURI, getNodeName, getNumberOfAttributes, getNumberOfElements, getNumberOfFromRelationships, getNumberOfToRelationships, getOrGenerateId, getPrefix, getPrefixes, getQNameValue, getRelationshipsBases, getRelationshipsChain, getRelationshipTypes, getStaticContext, getStaticNamespace, getToolTipText, getToRelationships, getToRelationships, getToRelationships, getToRelationships, getToRelationships, getValue, getXPathExecutable, getXPathNamespaceContext, getXPathToNode, getXPointerElementScheme, getXPointerElementScheme, getXPointerShorthandScheme, getXPointerToNode, isDead, isNamespaceDefined, isXdmDocumentAttached, objEquals, objHashCode, qNameToString, removeAttribute, removeChild, removeChild, removeFromRelationship, removeToRelationship, removeXMLChild, resetElements, resetHash, resolveHRef, resolveHRef, s_equal2, s_equal2, setAttributes, setBase, setDocument, setDocumentAndReload, setElements, setLang, setNamespaceContext, setNamespaces, setNode, setNodeName, setParent, setRegenerateNodeIfnotFound, setVariablesDefined, size, thin, toString, valueEquals, xEqual`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### XBRLFactNonNumeric

          public XBRLFactNonNumeric(XBRLFactsList container,
                            XBRLContext context,
                            XBRLItem item)

      Creates a fact for non numeric valus and adds it to the container object. This method is intented to be used to create non numeric facts from an application. nodeInfo is not a requirement.
      Parameters:
        `container` - - The XBRLFactsContainer this object will be added to
        `context` - - the context for this new fact
        `item` - - the taxonomy object for this new fact

  - ### Method Detail

    - #### clone

          public XBRLFactNonNumeric clone()

      Overrides:
        `clone` in class `XBRLFactItem`

    - #### clone

          public XBRLFactNonNumeric clone(DTSContainer newDTS)

      Description copied from class: `XBRLFact`
      Clone current fact but in a new DTSContainer.
      Overrides:
        `clone` in class `XBRLFactItem`
      Parameters:
        `newDTS` - the new dts
      Returns:
        cloned XBRLFact

    - #### vEqual

          public boolean vEqual(XBRLFactItem toFact)

      Description copied from class: `XBRLFactItem`
      Check if two items are value equal as defined in the XBRL 2.1 specification
      Specified by:
        `vEqual` in class `XBRLFactItem`
      Parameters:
        `toFact` - the other XBRLFactItem
      Returns:
        boolean

    - #### isDuplicate

          public boolean isDuplicate(XBRLFact otherFact)

      Description copied from class: `XBRLFact`
      Check if two items are duplicates as defined in the XBRL 2.1 specification
      Specified by:
        `isDuplicate` in class `XBRLFact`
      Parameters:
        `otherFact` - the other XBRLFactItem
      Returns:
        boolean

    - #### isDuplicate

          public boolean isDuplicate(XBRLFactItem otherFact,
                            boolean reversePEqual)

      Description copied from class: `XBRLFactItem`
      For internal purposes only during the calculation of isDuplicate of tuple children elements.
      Specified by:
        `isDuplicate` in class `XBRLFactItem`
      Parameters:
        `otherFact` - the t target
        `reversePEqual` - the reverse p equal
      Returns:
        boolean value

    - #### isEncodedHTML

          public boolean isEncodedHTML()

      Evaluate if the content of this non numeric fact is an HTML string or plain text.

      In previous versions this functionality was is the EFM processor. Not it is here for convenience.

      Returns:
        true if the content is HTML or seems to be HTML
      Since:
        2.8.3

    - #### generateNode

          public org.jdom.Element generateNode(boolean relativize,
                                      java.net.URI base)
                                        throws XBRLSerializationException

      Description copied from class: `XBRLFactItem`
      Generates the XBRLFactItem jdom node. If neccesary, generates the footnotes defined for this node.
      Overrides:
        `generateNode` in class `XBRLFactItem`
      Parameters:
        `relativize` - the relativize
        `base` - the base
      Returns:
        the element
      Throws:
        `XBRLSerializationException` - the XBRL serialization exception

    - #### uEqual

          public boolean uEqual(XBRLFactItem toFact)

      Description copied from class: `XBRLFactItem`
      Check if two items are unit equal as defined in the XBRL 2.1 specification
      Specified by:
        `uEqual` in class `XBRLFactItem`
      Parameters:
        `toFact` - the other XBRLFactItem
      Returns:
        boolean

    - #### getFriendlyName

          public java.lang.String getFriendlyName()

      Description copied from class: `XMLFragment`
      Returns a string description that represents the element content in a form that users can understand. This method may be overridden by parent classes.

      Remarks, this method may return very long names not suitable for user interface

      Overrides:
        `getFriendlyName` in class `XBRLFact`
      Returns:
        Non empty String. Internationalization is enabled

    - #### getFriendlyName

          public java.lang.String getFriendlyName(int modifiers,
                                         LabelsProvider lp)

      Description copied from class: `XBRLFact`
      Gets the friendly name.
      Overrides:
        `getFriendlyName` in class `XBRLFact`
      Parameters:
        `modifiers` - the modifiers
        `lp` - the lp
      Returns:
        a String representation of this fact.

    - #### resolve_equal2

          public boolean resolve_equal2(net.sf.saxon.s9api.XdmNode otherXdmNode)

      Description copied from interface: `HasAdditionalEqualityForReassignation`
      resolves content that is added by this XMLFragment during XMLNode serialization and may not be available to the lower levels in the hierarchy.
      Specified by:
        `resolve_equal2` in interface `HasAdditionalEqualityForReassignation`
      Overrides:
        `resolve_equal2` in class `XBRLFactItem`
      Parameters:
        `otherXdmNode` - the other xdm node
      Returns:
        true, if successful