Changes between Version 17 and Version 18 of schema/xpointer
- Timestamp:
- Mar 25, 2011, 11:26:53 AM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
schema/xpointer
v17 v18 40 40 * [[http://mpdl-test.mpiwg-berlin.mpg.de:30030/documents/echo/la/Benedetti_1585.xml#xpointer(id(%27page7%27)/echo[1]/text[1]/div[1]/div[2]/p[1]/s[1])|Benedetti, page 7, sentence 1]] 41 41 * XPointer to a text portion (range) of an element on a page in an XML document. The result of the XPointer URL is the page and the requested text portion of the element is highlighted. 42 * function range with two parameters (easy but not standard xpointer range notation):42 * function "range" with two parameters: 43 43 * from: start point of the range as count of text characters from the beginning of all the text nodes of the element 44 44 * to: end point of the range as count of text characters from the beginning of all the text nodes of the element … … 47 47 * Working example (in test system): 48 48 * [[http://mpdl-test.mpiwg-berlin.mpg.de:30030/documents/echo/la/Benedetti_1585.xml#xpointer(id(%27page7%27)/echo[1]/text[1]/div[1]/div[2]/p[1]/s[1]/range(7,42))|Benedetti, page 7, sentence 1, range 7-42]] 49 50 External user annotations of documents are stored relative to document pages by mapping XPointer page points/ranges to an internal identifier as a combination of document identifier, page number, element xpath expression, and a point/range expression. Example: 51 * before the first sentence on page 6: /tei/en/ramones_2004.xml, page6, /tei[1]/text[1]/body[1]/chap[1]/p[1]/s[1], point(.0) 52 * after the first sentence on page 6: /tei/en/ramones_2004.xml, page6, /tei[1]/text[1]/body[1]/chap[1]/p[1]/s[1], point(.1) 53 * from character 22 to 34 in the first sentence of page 6: /tei/en/ramones_2004.xml, page6, /tei[1]/text[1]/body[1]/chap[1]/p[1]/s[1], range(22, 34) 49 * XPointer to a text point (point) of an element on a page in an XML document. The result of the XPointer URL is the page and the requested text point of the element is highlighted. 50 * function "point" with one parameter: 51 * position with 3 possible values 52 * .0 : before the element 53 * .1 : after the element 54 * positive integer value: count of text characters from the beginning of all the text nodes of the element 55 * Example: 56 * <p>The Ramones started up in March 1974 (see <ref target="http://mpdl-proto.mpiwg-berlin.mpg.de/tei/en/ramones_2004.xml#xpointer(id('page6')/tei[1]/text[1]/body[1]/chap[1]/p[1]/s[1]/point(22))">page 6, sentence 1, character 22</ref>).</p> 57 * Working example (in test system): 58 * [[http://mpdl-test.mpiwg-berlin.mpg.de:30030/documents/echo/la/Benedetti_1585.xml#xpointer(id(%27page7%27)/echo[1]/text[1]/div[1]/div[2]/p[1]/s[1]/point(42))|Benedetti, page 7, sentence 1, point to character 42]] 59 60 External user annotations of documents are stored relative to document pages by mapping XPointer points/ranges to an internal identifier as a combination of document identifier, page number and the XPointer expression. 61 Example: 62 {{{ 63 <object type="element" 64 modificationDate="2011-03-25T11:11:11.000Z" 65 uid="joe" 66 xpointer="#xpointer(id('page6')/tei[1]/text[1]/body[1]/chap[1]/p[1]/s[1]/point(22))"> 67 <content> 68 <note>This is a test note with <ref target="http://slime.de">test link</ref></note> 69 </content> 70 </object> 71 }}} 54 72 55 73 === XLink === … … 133 151 * point(.0) or point(.1) or range(22, 34) 134 152 * Advantages 135 * pointers couldpoint to a text portion136 * pointers couldpoint to the place before or after an element137 * is partly alreadyimplemented153 * pointers point to a text portion 154 * pointers point to the place before or after an element 155 * is partly implemented 138 156 * Disadvantages 139 157 … … 155 173 * the broken link is sent to the older version of the document if a versioning system is running or an error message is given that the document has changed 156 174 * point/range expression 157 * point(.0) or point(.1) or range(22, 34)158 * Reasons 159 * compatible with XPointer, only this alternative175 * range(22, 34) or point(22), point(.0) or point(.1) 176 * Reasons 177 * XPointer is standard 160 178 161 179 === Implementation === … … 172 190 * implementation of a REST like URI over controller.xql: partly implemented 173 191 * translation of the XPointer URI 174 * highlighting of the requested element or text portionin the element192 * highlighting of the requested element, text portion or text point in the element 175 193 * different presentation modes: text, textPollux, gis, xml, pureXml 176 194 * in .../interface/page-fragment.xql and .../page-query-result.xql