All Projects → apache → Incubator Annotator

apache / Incubator Annotator

Licence: apache-2.0
Apache Annotator provides annotation enabling code for browsers, servers, and humans.

Programming Languages

typescript
32286 projects

Labels

Projects that are alternatives of or similar to Incubator Annotator

Knowledge
文档着重构建一个完整的「前端技术架构图谱」,方便 F2E(Front End Engineering又称FEE、F2E) 学习与进阶。
Stars: ✭ 1,620 (+1091.18%)
Mutual labels:  dom
Dom7
Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API
Stars: ✭ 119 (-12.5%)
Mutual labels:  dom
Holmes
Fast and easy searching inside a page
Stars: ✭ 1,679 (+1134.56%)
Mutual labels:  dom
Dna.js
🧬 An uncomplicated user interface library for building data-driven semantic templates
Stars: ✭ 114 (-16.18%)
Mutual labels:  dom
Jsx Dom
Use JSX to create DOM elements.
Stars: ✭ 117 (-13.97%)
Mutual labels:  dom
Femtojs
femtoJS - Really small JavaScript (ES6) library for DOM manipulation.
Stars: ✭ 122 (-10.29%)
Mutual labels:  dom
Flippy.js
FLIP animation helper; animate DOM changes with ease
Stars: ✭ 110 (-19.12%)
Mutual labels:  dom
Robojs
RoboJS is a library that aims to dynamically load JS modules depending on how the DOM is composed.
Stars: ✭ 133 (-2.21%)
Mutual labels:  dom
Binding.scala
Reactive data-binding for Scala
Stars: ✭ 1,539 (+1031.62%)
Mutual labels:  dom
Tempy
Python Object Oriented Html Templating System
Stars: ✭ 126 (-7.35%)
Mutual labels:  dom
Elemental2
Type checked access to browser APIs for Java code.
Stars: ✭ 115 (-15.44%)
Mutual labels:  dom
Lua Gumbo
Moved to https://gitlab.com/craigbarnes/lua-gumbo
Stars: ✭ 116 (-14.71%)
Mutual labels:  dom
Dom I18n
Provides a very basic HTML multilingual support using JavaScript
Stars: ✭ 125 (-8.09%)
Mutual labels:  dom
Calendarhtml Javascript
Simple Calendar built with Pure JavaScript (No Libraries) http://iamnitinpatel.com/projects/calendar/
Stars: ✭ 113 (-16.91%)
Mutual labels:  dom
Chai Webdriver
Build more expressive integration tests with webdriver sugar for chai.js
Stars: ✭ 128 (-5.88%)
Mutual labels:  dom
Interview Problem Summary
🎤 Prepare for the interviews and sum up the most popular interview problems for front-end(HTML/CSS/Javascript), Web development, full-stack. Also did some typical coding practice questions, such as UI caculator
Stars: ✭ 112 (-17.65%)
Mutual labels:  dom
Test State
Scala Test-State.
Stars: ✭ 119 (-12.5%)
Mutual labels:  dom
Css Box Model
Get accurate and well named css box model information about an Element 📦
Stars: ✭ 136 (+0%)
Mutual labels:  dom
Nodom
fake DOM for RE:DOM
Stars: ✭ 133 (-2.21%)
Mutual labels:  dom
Learnvue
Vue.js 源码解析
Stars: ✭ 11,516 (+8367.65%)
Mutual labels:  dom

Apache Annotator (incubating) Build Status

Apache Annotator (incubating) provides libraries to enable annotation related software, with an initial focus on identification of textual fragments in browser environments.

Usage

The Apache Annotator project is written in TypeScript, but the project is compiled and distributed in CommonJS and ECMAScript Module formats.

The project is made up of multiple packages. Install the apache-annotator package, which includes all sub-packages, or install individual packages from the @apache-annotator scope.

Import packages from either apache-annotator/package or @apache-annotator/package.

Currently, the following sub-packages are part of the project:

@apache-annotator/dom

This package contains functions for creating and resolving Web Annotation Selectors in DOM environments.

@apache-annotator/selector

This package contains generic utilities for composing functions that create and resolve Web Annotation Selectors.

Getting Involved

  • Join the mailing list. Send an email to [email protected] to subscribe.
  • Browse the [issue tracker] and file new issues if you encounter problems.
  • Read or contribute to the [wiki].

issue tracker wiki

Requirements

We use Lerna to juggle the various Apache Annotator libraries. If you'd like to contribute, you'll need the following:

  • node ^10 || ^11 || ^12 || >=13.7
  • yarn ^1.5

Setup

$ yarn install

Test

$ yarn test

Start a local test project

$ yarn start

Selectors

Many Annotations refer to part of a resource, rather than all of it, as the Target. We call that part of the resource a Segment (of Interest). A Selector is used to describe how to determine the Segment from within the Source resource.

The W3C Web Annotation Data Model outlines a number of different selectors. See table below for full list and status.

Selector Description Implementation Status
Text Quote This Selector describes a range of text, including some of the text immediately before (a prefix) and after (a suffix) it to distinguish between multiple copies of the same sequence of characters. Yes
CSS CSS Selectors allow for a wide variety of well supported ways to describe the path to an element in a web page. Yes
Text Position This Selector describes a range of text by recording the start and end positions of the selection in the stream. No
Fragment Uses the fragment part of an IRI defined by the representation's media type. No
XPath Implements an XPath based selection. No
Data Postion Similar to the Text Position Selector, the Data Position Selector uses the same properties but works at the byte in bitstream level rather than the character in text level. No
SVG An SvgSelector defines an area through the use of the Scalable Vector Graphics standard. No
Range A Range Selector can be used to identify the beginning and the end of the selection by using other Selectors. Yes
Refinement Select a part of a selection, rather than as a selection of the complete resource.

Web Annotation Data Model Validation

If you have any Web Annotation Data Model JSON documents, you can validate them using the validate script:

$ yarn validate --url https://raw.githubusercontent.com/w3c/web-annotation-tests/master/tools/samples/correct/anno1.json

With the --url option you can pass in a URL or a local path to a JSON file.

Examples

Valid:

https://raw.githubusercontent.com/w3c/web-annotation-tests/master/tools/samples/correct/anno1.json

Invalid:

https://raw.githubusercontent.com/w3c/web-annotation-tests/master/tools/samples/incorrect/anno1.json

(More)

License

Apache License 2.0

Disclaimer

Apache Annotator is currently undergoing incubation at The Apache Software Foundation.

See the accompanying DISCLAIMER file for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].