Logo

Getting to know DERIVA

  • About DERIVA
    • Features
    • FAIRness
  • DERIVA Platform
    • Server Components
      • ERMrest
      • Hatrac
      • ERMresolve
      • deriva-web
    • Client Libraries
      • Python APIs (deriva-py)
      • Javascript Libraries (ERMrestJS)
    • Client Applications
      • Web Interface (Chaise)
      • Desktop clients (deriva-qt)
      • Commandline Clients (deriva-py)
  • Key Concepts
    • Old Way: Ad hoc files and directories
    • New Way: Model and manage the relationships between data
    • Assets
    • The Catalog Model
    • Representing entities in a catalog
    • Representing relationships between entities
      • Cardinality
        • One-to-one (1:1) relationships
        • One-to-many (1:m) relationships
        • Many-to-one (m:1) relationships
        • Many-to-many (m:n) relationships

Using DERIVA

  • Using the Chaise Data Browser
    • Example of a landing page
    • Filtering sidebar
    • Search results view
    • Record page
  • Managing Data in DERIVA with deriva-client
    • Installed Applications
      • Command-Line Interface (CLI) applications
      • Graphical User Interface (GUI) applications
    • Installer packages for Windows and MacOSX
    • Installing deriva-client from PyPi via pip
      • Installation Prerequisites
      • Installation Quickstart
        • Mac/Linux
        • Important Note: For MacOSX users running Python 3.5.x with pip version < 9.0.3
        • Windows
        • IMPORTANT NOTE: Python virtual environments versus user environments
      • Installation Procedure
        • Installation Sequence
    • Managing data with the datapath API (deriva-py)
    • Reference Documentation
    • Source Code
  • Starting a Deriva-Py Data Management Project
    • Python Client Bindings
    • Your Project-Specific Groups
      • Suggested Groups
      • Keeping Track of Group Identifiers
    • Your First Hatrac Namespace
    • Your First Catalog
      • Initial Catalog Content
      • Your First Catalog Policy
      • Static Policy Inheritance
      • Exposing the ERMrest Client Table
    • Extending Your Catalog
      • Adding a Table
      • Adding an Asset Table
      • Asset Configuration
      • Allowing Self-Service Editing by Writers
      • Preventing Attachments by Unrelated Writers
      • Pitfall of Foreign Key Policies
      • Adding a Column
      • Removing a Column
      • Removing a Table
      • Other Model Changes…?
    • Further Discussion
      • Curators versus Writers
      • Anonymous Access
      • Extending ERMrest Client Table Definition
      • Enumerable Catalogs support ERMresolve
  • Annotations Guide
    • Adapting the User Experience with Annotations
      • Base Model Annotation
      • Annotation support in Chaise/ERMRestJS
        • Contexts
        • Facet search
        • Formatting and presentation
        • Pseudo-columns logic and heuristics
        • Table Alternatives
        • Export
      • Annotation support in ioboxd
    • Base Model Annotation
      • Notation and Usage
        • Example to Set Annotation
      • Annotations
        • Tag: 2015 Display
        • Tag: 2016 App Links
        • Tag: 2016 Immutable
        • Tag: 2016 Generated
        • Tag: 2016 Non Deletable
        • Tag: 2016 Visible Columns
        • Tag: 2017 Key Display
        • Tag: 2016 Foreign Key
        • Tag: 2016 Column Display
        • Tag: 2016 Table Display
        • Tag: 2016 Visible Foreign Keys
        • Tag: 2016 Table Alternatives
        • Tag: 2019 Export
        • Tag: 2017 Asset
        • Tag: 2018 Citation
        • Tag: 2018 Required
        • Tag: 2018 Indexing Preferences
        • Tag: 2019 Chaise Config
        • Tag: 2019 Source Definitions
        • Tag: 2021 Google Dataset
        • Tag: 2021 Table Config
        • Tag: 2021 Export Fragment Definitions
        • Tag: 2023 Column Defaults
      • Context Names
      • Pattern Expansion
      • Column Directive
        • Overall structure
        • Properties
    • Annotation Contexts Used By Chaise
    • Template and Markdown Guide
      • Using annotations to create templates with Markdown
      • Mustache Templating
        • Table of contents
        • Variables
        • Examples
      • Handlebars Templating
        • Table of contents
        • Handlebars vs. Mustache
        • Usage
        • Using Pre-defined Attributes
        • Helpers
        • Block Helpers
        • Boolean Helpers
      • Markdown Formatting
        • Table of Contents
        • Inline Vs. Block
        • Attributes
        • Examples
    • PreFormat Column Value
      • Syntax
        • Flags field:
        • Width field
        • Precision Field
        • Type Field
        • Named arguments:
      • Examples:
      • Syntax for Dates and Timestamps
        • Most common Year, Month, and Day tokens:
        • Most common Hour, minute, second, millisecond, and offset tokens:
    • Table Alternatives
      • Definition and assumptions
      • Related Entities
      • Understanding Recordset
      • ERMrestJS Restrictions
      • Faceting
        • 1. Alternative Table For Main Table
        • 2. Alternative Table in Facet List
    • Export Annotation
      • Table of contents
      • Export Templates
        • Overall structure
        • Details
      • How it works
      • Default templates
        • Default BDBag template
        • Default CSV template
        • How visible-columns is turned into export
      • Examples
        • Example 1
        • Example 2
        • Example 3
        • Example 4
        • Example 5
        • Example 6

Reference

  • Python Command-line Clients and API (deriva-py)
    • Deriva Python APIs
      • ERMrest Query and Data Manipulation
        • Features
        • Limitations
        • Tutorials
      • ERMrest Model Management
        • Features
        • Limitations
        • Examples
      • ERMrest Catalog
        • Catalog Binding
        • Client Credentials
        • High-Level API Factories
        • Low-Level HTTP Methods
        • HTTP Caching
    • Source Code and Module Documentation (deriva package)
      • Subpackages
        • deriva.config package
        • deriva.core package
        • deriva.transfer package
        • deriva.seo package
      • Module contents
    • deriva-acl-config
      • Using deriva-acl-config to configure ACLs
      • Config file format
        • The groups stanza
        • The group_list_table stanza
        • The acl_definitions stanza
        • The acl_bindings stanza
        • The catalog_acls stanza
        • The schema_acls stanza
        • The table_acls stanza
        • The column_acls stanza
        • The foreign_key_acls stanza
      • Security Considerations
    • deriva-annotation-config
      • Using deriva-annotation-config to configure annotations
      • Config file format
        • The known_attributes stanza
        • The schema_annotations stanza
        • The table_annotations stanza
        • The column_annotations stanza
        • The foreign_key_annotations stanza
    • deriva-hatrac-cli
      • Features
      • Common options
        • Hostname
        • Authentication
      • Namespace operation examples
        • List
        • Create Namespace
        • Delete Namespace
      • Object operation examples
        • Put an object
        • Get an object
        • Delete an object
      • ACL operation examples
        • Get ACLs
        • Set ACLs
        • Delete ACLs
    • deriva-download-cli
      • Features
      • Command-Line options
        • Positional arguments:
        • Optional arguments:
      • Configuration file format
        • Example configuration file:
        • Configuration file element: catalog
        • Configuration file element: bag
        • Configuration file element: env
      • Supported processors
      • Processor details
        • env
        • csv
        • json
        • json-stream
        • download
        • fetch
      • Supported transform_processors
      • Transform Processor details
        • strsub
        • interpolation
        • cat
    • deriva-sitemap-cli
      • Using deriva-sitemap-cli to create sitemaps
      • Examples
    • deriva-backup-cli
      • Features
      • Command-Line options
        • Positional arguments:
        • Optional arguments:
    • deriva-restore-cli
      • Features
      • Command-Line options
        • Positional arguments:
        • Optional arguments:
  • Desktop GUI Applications (deriva-qt)
    • Using deriva-auth to authenticate to DERIVA systems
      • TBD
    • Uploading files via DERIVA-Upload and DERIVA-Auth
      • From a desktop system
        • 1. Initial setup
        • 2. Uploading files
        • 3. Logging out
      • From a remote server
        • 1. Initial setup
        • 2. Getting an authentication token
        • 3. Uploading files
        • 4. Logging out
  • Schema Workbench (deriva-workbench)
    • Updating DERIVA catalog annotations via the DERIVA-Workbench
      • 1. Initial Setup
      • 2. Connect and Log In
      • 3. Browsing a Schema
      • 4. Editing Annotations (Text-based)
      • 5. Editing Annotations (Graphically)
        • a. Editing visible-columns
        • b. Editing visible-foreign-keys
        • c. Editing source-definitions
        • d. Editing table-display
        • e. Editing citation
        • f. Editing display
        • g. Editing foreign-key
      • 6. Adding or Removing Annotations (Graphically)
      • 7. Updating Server-side Annotations
      • 8. Validating Catalog Annotations
      • 9. Refresh From Server and Discard Local Changes
      • 10. Dump and Restore Annotations To/From Files
  • Catalog Management Command-line Clients and API (deriva-catalog-manage)
    • TBD
    • TBD
    • TBD
    • TBD
    • deriva.utils.catalog package
      • Subpackages
        • deriva.utils.catalog.components package
        • deriva.utils.catalog.manage package
  • Entity Relationship Store (ERMrest)
    • ermrest-registry-purge
      • Synopsis
      • Description
      • Options
      • Exit Status
      • Examples
    • Client table
      • Extensibility and Localization
      • Conservative default policy
      • Interface Guarantees
    • ERMrest API
      • URL Conventions
      • Resource and Service Model
        • Graph of Web Resources
        • Data Resource Naming Language
        • RESTful Operations Overview
        • HTTP Concurrency Control
        • Set-based Data Resources and Representations
    • Catalog Operations
      • Service Ad Retrieval
        • Indexing Preferences Feature Flag
      • Catalog Creation
      • Catalog Retrieval
      • Catalog Deletion
      • Catalog Alias Creation
      • Catalog Alias Retrieval
      • Catalog Alias Update
      • Catalog Alias Deletion
    • Model Resource Naming
      • Catalog Names
      • Catalog Aliases
      • Generic Model Sub-Resources
        • Annotations
        • Comments
        • ACLs
        • ACL Bindings
      • Model Names
      • Schema Names
      • Table Names
        • Column Names
        • Key Names
        • Foreign Key Names
    • Model Operations
      • Schemata Retrieval
      • Bulk Schemata and Table Creation
      • Schema Creation
      • Schema Retrieval
      • Schema Alteration
      • Schema Deletion
      • Table List Retrieval
      • Table Creation
      • Table Retrieval
      • Table Alteration
      • Table Deletion
      • Column List Retrieval
      • Column Creation
      • Column Indexing Preferences
      • Column Retrieval
      • Column Alteration
      • Column Deletion
      • Key List Retrieval
      • Key Creation
      • Key Retrieval
      • Key Alteration
      • Key Deletion
      • Foreign Key List Retrieval
      • Foreign Key Creation
      • Foreign Key Retrieval
      • Foreign Key Alteration
      • Foreign Key Deletion
      • Annotations
        • Annotation List Retrieval
        • Annotation Creation
        • Annotation Bulk Update
        • Annotation Retrieval
        • Annotation Deletion
      • Comments
        • Comment Creation
        • Comment Retrieval
        • Comment Deletion
      • Access Control Lists
        • Access Control Lists Retrieval
        • Bulk Access Control List Update
        • Access Control List Creation
        • Access Control List Retrieval
        • Access Control List Deletion
      • Access Control List Bindings
        • Access Control List Bindings Retrieval
        • Bulk Access Control List Binding Update
        • Access Control List Binding Creation
        • Access Control List Binding Retrieval
        • Access Control List Binding Deletion
    • Standard System Columns
      • Interface Guarantees
    • Access Control Core Concepts
      • Catalog Resource Hierarchy
        • Usage Scenarios
      • Access Modes
      • Policy Scoping and Resource Dependencies
      • Data-Dependent Policies
      • Policy Inheritance and Implication
      • Model-level ACLs
        • Catalog ACLs
        • Schema ACLs
        • Table ACLs
        • Column ACLs
        • Reference ACLs
      • Dynamic ACL Bindings
        • Dynamic Table ACLs
        • Dynamic Column ACLs
        • Dynamic Reference ACLs
    • Static ACL Technical Reference
      • Available Static ACL Names
      • ACL Representation
      • Restrictions on Wildcard Policies
    • Dynamic ACL Binding Technical Reference
      • Available Dynamic ACL Types
      • Dynamic ACL Binding Representation
        • Inheritence and False Binding
        • Projection Document
        • Effective ACL Projection Query
        • Projection Types
        • Scoping ACLs
    • Access Decision Introspection
      • Static Rights Summary
      • Row-Level Rights Summary
      • Predicting Access Decisions
    • Data Resource Naming
      • Entity Resolution Names
      • Entity Names
      • Attribute Names
      • Aggregate Names
      • Attribute Group Names
      • Attribute Binning
        • Supported Column Types for Binning
      • Rights Summary
      • Data Paths
        • Path Root
        • Path Filters
        • Entity Links
        • Table Instance Aliases
        • Path Context Reset
      • Filter Language
        • Unary Filter Predicate
        • Binary Filter Predicate
        • Literal Values
        • Negated Filter
        • Parenthetic Filter
        • Conjunctive Filter
        • Disjunctive Filter
        • Conjunctive Normal Form
        • Disjunctive Normal Form
      • Sort Modifier
      • Paging Modifiers
        • Before Modifier
        • After Modifier
      • Accept Query Parameter
      • Download Query Parameter
      • Defaults Query Parameter
      • Nondefaults Query Parameter
      • Onconflict Query Parameter
      • Limit Query Parameter
      • Data Paging
    • Data Operations
      • Entity Resolution
      • Entity Creation
        • Entity Creation with Defaults
        • Idempotent Entity Creation
      • Entity Update
      • Entity Retrieval
      • Entity Deletion
      • Attribute Retrieval
      • Attribute Deletion
      • Attribute Group Retrieval
      • Attribute Group Update
        • Attribute Group Update with Renaming
      • Aggregate Retrieval
    • History Resource Naming
      • History Range
      • Historical ACLs
      • Historical ACL Bindings
      • Historical Annotations
      • Historical Attributes
    • History Operations
      • History Range Discovery
      • History Range Truncation
      • Amend Historical ACLs
      • Amend Historical ACL Bindings
      • Amend Historical Annotations
      • Redact Historical Attributes
      • Suppress Table History Collection
  • Object Storage (Hatrac)
    • Installing
      • Install code
      • Basic testing
      • Configure web stack
      • Example Hatrac configuration
      • REST API testing
      • Example Webauthn2 configuration
      • Example Apache configuration
      • Working with SE-Linux
        • Errors regarding WSGI socket
    • How-tos
      • Background
      • Examples
        • Deploying
        • Authentication using Database Providers
        • Listing the Root Namespace
        • Creating a Nested Namespace
        • Creating an Object
        • Retrieving an Object
        • Updating an Object
        • Retrieving an Object Version
        • Deleting an Object Version
        • Deleting an Object
    • REST API
      • Contents
        • Main Topics
        • Quick Links to Operations
      • URL Conventions
      • Resource Naming and Lifecycle Rules
        • Object Version Naming
        • Referential Stability
      • Root Namespace Resource
        • Namespace Listing Retrieval
        • Namespace Listing Metadata Retrieval
        • Deletion of Root Namespace Forbidden
      • Nested Namespace Resources
        • Nested Namespace Creation
        • Nested Namespace Listing Retrieval
        • Nested Namespace Deletion
      • Object Resources
        • Object Creation and Update
        • Object Retrieval
        • Object Metadata Retrieval
        • Object Version List Retrieval
        • Object Deletion
      • Object Version Resources
        • Object Version Creation
        • Object Version Retrieval
        • Object Version Metadata Retrieval
        • Object Version Deletion
      • Metadata Sub-Resources
        • Lifecycle and Ownership
        • Metadata Collection Retrieval
        • Metadata Value Retrieval
        • Metadata Value Creation and Update
        • Metadata Value Deletion
      • Access Control List Sub-Resources
        • Lifecycle and Ownership
        • Access Control Retrieval
        • Access Control List Retrieval
        • Access Control List Entry Retrieval
        • Access Control List Update
        • Access Control List Deletion
      • Chunked Upload Resources
        • Chunked Upload Job Creation
        • Chunked Upload Job Listing Retrieval
        • Chunk Upload
        • Chunked Upload Job Finalization
        • Chunked Upload Job Status Retrieval
        • Chunked Upload Job Cancellation
  • JavaScript Client Libraries (ERMrestJS)
    • Base Model Annotation
      • Notation and Usage
        • Example to Set Annotation
      • Annotations
        • Tag: 2015 Display
        • Tag: 2016 App Links
        • Tag: 2016 Immutable
        • Tag: 2016 Generated
        • Tag: 2016 Non Deletable
        • Tag: 2016 Visible Columns
        • Tag: 2017 Key Display
        • Tag: 2016 Foreign Key
        • Tag: 2016 Column Display
        • Tag: 2016 Table Display
        • Tag: 2016 Visible Foreign Keys
        • Tag: 2016 Table Alternatives
        • Tag: 2019 Export
        • Tag: 2017 Asset
        • Tag: 2018 Citation
        • Tag: 2018 Required
        • Tag: 2018 Indexing Preferences
        • Tag: 2019 Chaise Config
        • Tag: 2019 Source Definitions
        • Tag: 2021 Google Dataset
        • Tag: 2021 Table Config
        • Tag: 2021 Export Fragment Definitions
        • Tag: 2023 Column Defaults
      • Context Names
      • Pattern Expansion
      • Column Directive
        • Overall structure
        • Properties
    • Annotation Contexts Used By Chaise
    • Template and Markdown Guide
      • Using annotations to create templates with Markdown
      • Mustache Templating
        • Table of contents
        • Variables
        • Examples
      • Handlebars Templating
        • Table of contents
        • Handlebars vs. Mustache
        • Usage
        • Using Pre-defined Attributes
        • Helpers
        • Block Helpers
        • Boolean Helpers
      • Markdown Formatting
        • Table of Contents
        • Inline Vs. Block
        • Attributes
        • Examples
    • PreFormat Column Value
      • Syntax
        • Flags field:
        • Width field
        • Precision Field
        • Type Field
        • Named arguments:
      • Examples:
      • Syntax for Dates and Timestamps
        • Most common Year, Month, and Day tokens:
        • Most common Hour, minute, second, millisecond, and offset tokens:
    • Facet JSON Structure
      • Structure
      • Logical operators
      • Source path
      • Source key
      • Fast filter source
      • Constraints
      • Extra properties
        • entity v.s. scalar facet
        • markdown_name
        • comment
        • hide_null_choice/hide_not_null_choice
        • bar_plot
        • order
      • hide_num_occurrences
      • Examples
        • Example 1
        • Example 2
        • Example 3 (Entity vs. Scalar)
        • Example 4 (Choice Vs. Range)
        • Example 5 (Facet Title)
        • Example 6 (Open Vs. Close)
        • Example 7 (Change order of scalar values)
    • Column Directive
      • Table of contents
      • Overall structure
        • 1. Column directive with source
        • 2. Column directive with sourcekey
        • 3. Column directive without any source
      • Properties
        • 1. Data source properties
        • 2. Presentation properties
      • Shorthand syntax
      • Examples
        • Visible Column List
        • Visible ForeignKey List
        • Alternative syntax
    • Column Directive Display
      • Accessing Column Directive Values Using By Utilizing Source Definitions
      • Accessing Current Column Directive Data
        • $self Data Structure
        • Examples
    • Column directive in templating environments
      • 1. Defining sources
      • 2. Defining column directive display
        • Accessing columns and fkeys
        • Accessing sources (wait_for)
      • Examples
    • Input iframe
      • Iframe communication
      • Annotation
        • url_pattern
        • field_mapping
        • optional_fields
        • empty_field_confirm_message_markdown
    • Table Alternatives
      • Definition and assumptions
      • Related Entities
      • Understanding Recordset
      • ERMrestJS Restrictions
      • Faceting
        • 1. Alternative Table For Main Table
        • 2. Alternative Table in Facet List
    • Export Annotation
      • Table of contents
      • Export Templates
        • Overall structure
        • Details
      • How it works
      • Default templates
        • Default BDBag template
        • Default CSV template
        • How visible-columns is turned into export
      • Examples
        • Example 1
        • Example 2
        • Example 3
        • Example 4
        • Example 5
        • Example 6
    • Google dataset annotation
      • Expected Fields
      • Guidelines
  • Web interface (Chaise)
    • Configuration File: chaise-config.js
      • Table of Contents:
        • General Configuration:
        • Navbar Configuration:
        • Login Configuration:
        • Display Configuration:
        • Export Configuration:
        • Share and Cite Configuration:
        • System Columns Configuration:
        • System Configuration:
        • Other Configuration:
    • Record Page
      • Related Entities
        • Add Related Entity
    • Custom CSS Styling Tips
      • Table of Contents
      • Changing chaise styles
        • Body
        • Navbar
        • Page-sepecific
        • Inline comments
      • Character replacement
      • Examples
        • More specific examples (using RBK …/#2/Gene_Expression:Specimen)
      • Custom Markdown Styles
      • Bootstrap styles
    • Useful Browser Console Commands
      • Browser Console
      • Useful Functions
      • Global Variables
    • Use the navbar app on external HTML pages
      • Table of Contents
      • How to add the navbar app
        • 1. Install Chaise
        • 2. Include navbar dependencies
        • 3. Prefetch custom styles (optional)
        • 4. Use navbar
        • 5. Avoid manually including bootstrap
      • How to configure navbar
      • How to customize navbar UI
      • Migrate from AngularJS
      • Notes
    • Use the login app on external HTML pages
      • Table of Contents
      • How to add the login app
        • 1. Install Chaise
        • 2. Include login dependencies
        • 3. Prefetch custom styles (optional)
        • 4. Use login
      • Notes
    • Logging
      • Table of Contents
      • Overview
      • Attributes
      • Action definition
      • List of requests
        • Server vs. Client
        • Stack structure
      • Facet compressed syntax
      • Error log
      • Truncation
      • Analysis
        • Asset Download & CSV Default Export
        • Finding the displayed recordset request
        • Find number of clicks on the “view” button in recordset app
      • Change Log
        • 11/04/21
        • 04/02/21
        • 08/26/20
        • 02/12/20
    • Logging (Pre-February 2020)
      • Attributes
      • Action List
      • Client Button Action List
        • Button Action Attributes
      • Error Log
      • Truncation
      • Analysis
        • Asset Download & CSV Default Export
      • PCID list
      • Change Log
        • 10/??/19
        • 07/16/19
        • 07/12/19
        • 07/10/19
        • 05/06/19
        • 04/18/19
        • 03/08/19
  • Auxiliary web services for DERIVA (deriva-web)
    • deriva-web Configuration Guide
      • deriva_config.json
      • wsgi_deriva.conf
    • REST API reference: deriva/export
      • Exporting Files
        • Export file(s)
        • Retrieve exported file(s)
        • Retrieve log file for exported file(s)
      • Exporting Bags
        • Export bag
        • Retrieve an exported bag
        • Retrieve log file for exported bag
    • Chaise Integration
      • Export
        • root (object)
        • template (object)
        • output (object)
        • Output details
        • source (object)
        • destination (object)
        • Supported output formats
        • Output format details
DERIVA Docs
  • »
  • Annotations Guide
  • View page source

Annotations Guide¶

  • Adapting the User Experience with Annotations
    • Base Model Annotation
    • Annotation support in Chaise/ERMRestJS
    • Annotation support in ioboxd
  • Base Model Annotation
    • Notation and Usage
    • Annotations
    • Context Names
    • Pattern Expansion
    • Column Directive
  • Annotation Contexts Used By Chaise
  • Template and Markdown Guide
    • Using annotations to create templates with Markdown
    • Mustache Templating
    • Handlebars Templating
    • Markdown Formatting
  • PreFormat Column Value
    • Syntax
    • Examples:
    • Syntax for Dates and Timestamps
  • Table Alternatives
    • Definition and assumptions
    • Related Entities
    • Understanding Recordset
    • ERMrestJS Restrictions
    • Faceting
  • Export Annotation
    • Table of contents
    • Export Templates
    • How it works
    • Default templates
    • Examples
Previous Next

© Copyright 2019, USC Information Sciences Institute, Informatics Systems Research Division.

Built with Sphinx using a theme provided by Read the Docs.