diff options
author | link <link@localhost> | 2001-06-16 18:58:35 +0000 |
---|---|---|
committer | link <link@localhost> | 2001-06-16 18:58:35 +0000 |
commit | 2be8eaf852d371ce11fe5e6641f9bc0098f12923 (patch) | |
tree | 1b18275b65185e2621a8c53dbad2f1b08b9e60f7 | |
parent | 66bbc35ad4e228a56e2b3ea5a625ce7443d9c677 (diff) | |
download | markup-validator-2be8eaf852d371ce11fe5e6641f9bc0098f12923.zip markup-validator-2be8eaf852d371ce11fe5e6641f9bc0098f12923.tar.gz markup-validator-2be8eaf852d371ce11fe5e6641f9bc0098f12923.tar.bz2 |
Adding Apple Help 1.0 with DTD from Jeff Ganyard <applehelp@bebop.net>.
-rw-r--r-- | htdocs/config/doctypes.cfg | 3 | ||||
-rw-r--r-- | htdocs/config/fpis.cfg | 5 | ||||
-rw-r--r-- | htdocs/sgml-lib/AppleHelp1.0.dtd | 435 | ||||
-rw-r--r-- | htdocs/sgml-lib/catalog | 4 |
4 files changed, 444 insertions, 3 deletions
diff --git a/htdocs/config/doctypes.cfg b/htdocs/config/doctypes.cfg index 1065f8a..69f7b2e 100644 --- a/htdocs/config/doctypes.cfg +++ b/htdocs/config/doctypes.cfg @@ -1,7 +1,7 @@ # # Mapping of HTML Version "names" to DOCTYPEs. Used for DOCTYPE overide. # -# $Id: doctypes.cfg,v 1.2 2001-05-10 09:04:53 gerald Exp $ +# $Id: doctypes.cfg,v 1.3 2001-06-16 18:58:35 link Exp $ HTML 0.0 <!DOCTYPE html PUBLIC "-//IETF//DTD HTML Level 0//EN//2.0"> Strict HTML 0.0 <!DOCTYPE html PUBLIC "-//IETF//DTD HTML Strict Level 0//EN//2.0"> @@ -40,4 +40,5 @@ XHTML 1.0 Strict <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http XHTML 1.0 Transitional <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> XHTML 1.0 Frameset <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> XHTML Basic 1.0 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd"> +Apple Help 1.0 <!DOCTYPE HTML PUBLIC "-//bebop.net//DTD HTML Apple Help 1.0//EN" "http://www.bebop.net/AppleHelpDTD/AppleHelp1.0.dtd"> diff --git a/htdocs/config/fpis.cfg b/htdocs/config/fpis.cfg index 4c9babf..d2c8ab2 100644 --- a/htdocs/config/fpis.cfg +++ b/htdocs/config/fpis.cfg @@ -1,7 +1,7 @@ # # Mapping of FPIs to plain text version strings. # -# $Id: fpis.cfg,v 1.9 2001-05-10 09:06:34 gerald Exp $ +# $Id: fpis.cfg,v 1.10 2001-06-16 18:58:35 link Exp $ -//IETF//DTD HTML Level 0//EN//2.0 HTML 0.0 -//IETF//DTD HTML Strict Level 0//EN//2.0 Strict HTML 0.0 @@ -52,3 +52,6 @@ ISO/IEC 15445:2000//DTD HTML//EN <a href="http://purl.org/NET/ISO+IEC.15445/1544 -//W3C//DTD MathML 2.0//EN <a href="http://www.w3.org/TR/MathML2/">MathML 2.0</a> -//W3C//DTD XHTML Basic 1.0//EN <a href="http://www.w3.org/TR/2000/REC-xhtml-basic-20001219/">XHTML Basic 1.0</a> + +-//bebop.net//DTD HTML Apple Help 1.0//EN Apple Help 1.0 + diff --git a/htdocs/sgml-lib/AppleHelp1.0.dtd b/htdocs/sgml-lib/AppleHelp1.0.dtd new file mode 100644 index 0000000..cbc9a25 --- /dev/null +++ b/htdocs/sgml-lib/AppleHelp1.0.dtd @@ -0,0 +1,435 @@ +<!-- $Id: AppleHelp1.0.dtd,v 1.1 2001-06-16 18:58:35 link Exp $ --> +<!-- + Apple Help Document Type Definition (unauthorized) for the HyperText + Markup Language for use within the context of Apple's Help Viewer + application. + Date: Tuesday June 12th 2001 + Author: Jeff Ganyard <ganyard@bebop.net> + Vast portions borrowed from document credited below. +--> +<!-- + W3C Document Type Definition for the HyperText Markup Language + version 3.2 as ratified by a vote of W3C member companies. + For more information on W3C look at URL http://www.w3.org/ + Date: Tuesday January 14th 1997 + Author: Dave Raggett <dsr@w3.org> + HTML 3.2 aims to capture recommended practice as of early '96 + and as such to be used as a replacement for HTML 2.0 (RFC 1866). + Widely deployed rendering attributes are included where they + have been shown to be interoperable. SCRIPT and STYLE are + included to smooth the introduction of client-side scripts + and style sheets. Browsers must avoid showing the contents + of these element Otherwise support for them is not required. + ID, CLASS and STYLE attributes are not included in this version + of HTML. +--> +<!ENTITY % HTML.Version + "-//bebop.net//DTD HTML Apple Help 1.0//EN" + -- Typical usage: + <!DOCTYPE HTML PUBLIC "-//bebop.net//DTD HTML Apple Help 1.0//EN"> + <html> + ... + </html> + -- + > +<!--================== Deprecated Features Switch =========================--> +<!ENTITY % HTML.Deprecated "INCLUDE"> +<!--================== Imported Names =====================================--> +<!ENTITY % Content-Type "CDATA" + -- meaning a MIME content type, as per RFC1521 + --> +<!ENTITY % HTTP-Method "GET | POST" + -- as per HTTP specification + --> +<!ENTITY % URL "CDATA" + -- The term URL means a CDATA attribute + whose value is a Uniform Resource Locator, + See RFC1808 (June 95) and RFC1738 (Dec 94). + --> +<!-- Parameter Entities --> +<!ENTITY % head.misc "SCRIPT|STYLE|META|LINK" -- repeatable head elements --> +<!ENTITY % heading "H1|H2|H3|H4|H5|H6"> +<!ENTITY % list "UL | OL | DIR | MENU"> +<![ %HTML.Deprecated [ + <!ENTITY % preformatted "PRE | XMP | LISTING"> +]]> +<!ENTITY % preformatted "PRE"> +<!--================ Character mnemonic entities ==========================--> +<!ENTITY % ISOlat1 PUBLIC + "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML"> +%ISOlat1; +<!--================ Entities for special symbols =========================--> +<!-- &trade and &cbsp are not widely deployed and so not included here --> +<!ENTITY amp CDATA "&" -- ampersand --> +<!ENTITY gt CDATA ">" -- greater than --> +<!ENTITY lt CDATA "<" -- less than --> +<!--=================== Text Markup =======================================--> +<!ENTITY % font "TT | I | B | U | STRIKE | BIG | SMALL | SUB | SUP"> +<!ENTITY % phrase "EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE"> +<!ENTITY % special "A | IMG | APPLET | FONT | BASEFONT | BR | SCRIPT | MAP"> +<!ENTITY % text "#PCDATA | %font | %phrase | %special"> +<!ELEMENT (%font|%phrase) - - (%text)*> +<!-- there are also 16 widely known color names although + the resulting colors are implementation dependent: + aqua, black, blue, fuchsia, gray, green, lime, maroon, + navy, olive, purple, red, silver, teal, white, and yellow + These colors were originally picked as being the standard + 16 colors supported with the Windows VGA palette. + --> +<!ELEMENT FONT - - (%text)* -- local change to font --> +<!ATTLIST FONT + size CDATA #IMPLIED -- [+]nn e.g. size="+1", size=4 -- + color CDATA #IMPLIED -- #RRGGBB in hex, e.g. red: color="#FF0000" -- + face CDATA #IMPLIED -- comma separated list of font names -- + > +<!ELEMENT BASEFONT - O EMPTY -- base font size (1 to 7)--> +<!ATTLIST BASEFONT + size CDATA #IMPLIED -- e.g. size=3 -- + > +<!ELEMENT BR - O EMPTY -- forced line break --> +<!ATTLIST BR + clear (left|all|right|none) none -- control of text flow -- + > +<!--================== HTML content models ================================--> +<!-- + HTML has three basic content models: + %text character level elements and text strings + %flow block-like elements e.g. paragraphs and lists + %bodytext as %flow plus headers H1-H6 and ADDRESS +--> +<!ENTITY % block + "P | %list | %preformatted | DL | DIV | CENTER | + BLOCKQUOTE | ISINDEX | HR | TABLE"> +<!-- %flow is used for DD and LI --> +<!ENTITY % flow "(%text | %block)*"> +<!--=================== Document Body =====================================--> +<!ENTITY % body.content "(%heading | %text | %block | ADDRESS)*"> +<!ENTITY % color "CDATA" -- a color using sRGB: #RRGGBB as Hex values --> +<!-- There are also 16 widely known color names with their sRGB values: + Black = #000000 Green = #008000 + Silver = #C0C0C0 Lime = #00FF00 + Gray = #808080 Olive = #808000 + White = #FFFFFF Yellow = #FFFF00 + Maroon = #800000 Navy = #000080 + Red = #FF0000 Blue = #0000FF + Purple = #800080 Teal = #008080 + Fuchsia= #FF00FF Aqua = #00FFFF + --> +<!ENTITY % body-color-attrs " + bgcolor %color #IMPLIED + text %color #IMPLIED + link %color #IMPLIED + vlink %color #IMPLIED + alink %color #IMPLIED + "> +<!ELEMENT BODY O O %body.content> +<!ATTLIST BODY + background %URL #IMPLIED -- texture tile for document background -- + %body-color-attrs; -- bgcolor, text, link, vlink, alink -- + > +<!ENTITY % address.content "((%text;) | P)*"> +<!ELEMENT ADDRESS - - %address.content> +<!ELEMENT DIV - - %body.content> +<!ATTLIST DIV + align (left|center|right) #IMPLIED -- alignment of following text -- + > +<!-- CENTER is a shorthand for DIV with ALIGN=CENTER --> +<!ELEMENT center - - %body.content> +<!--================== The Anchor Element =================================--> +<!ELEMENT A - - (%text)* -(A)> +<!ATTLIST A + name CDATA #IMPLIED -- named link end -- + href %URL #IMPLIED -- URL for linked resource -- + rel CDATA #IMPLIED -- forward link types -- + rev CDATA #IMPLIED -- reverse link types -- + title CDATA #IMPLIED -- advisory title string -- + > +<!--================== Client-side image maps ============================--> +<!-- These can be placed in the same document or grouped in a + separate document although this isn't yet widely supported --> +<!ENTITY % SHAPE "(rect|circle|poly)"> +<!ENTITY % COORDS "CDATA" -- comma separated list of numbers --> +<!ELEMENT MAP - - (AREA)*> +<!ATTLIST MAP + name CDATA #IMPLIED + > +<!ELEMENT AREA - O EMPTY> +<!ATTLIST AREA + shape %SHAPE rect + coords %COORDS #IMPLIED -- defines coordinates for shape -- + href %URL #IMPLIED -- this region acts as hypertext link -- + nohref (nohref) #IMPLIED -- this region has no action -- + alt CDATA #REQUIRED -- needed for non-graphical user agents -- + > +<!--================== The LINK Element ==================================--> +<!ENTITY % Types "CDATA" + -- See Internet Draft: draft-ietf-html-relrev-00.txt + LINK has been part of HTML since the early days + although few browsers as yet take advantage of it. + Relationship values can be used in principle: + a) for document specific toolbars/menus when used + with the LINK element in the document head: + b) to link to a separate style sheet + c) to make a link to a script + d) by stylesheets to control how collections of + html nodes are rendered into printed documents + e) to make a link to a printable version of this document + e.g. a postscript or pdf version +--> +<!ELEMENT LINK - O EMPTY> +<!ATTLIST LINK + href %URL #IMPLIED -- URL for linked resource -- + rel %Types #IMPLIED -- forward link types -- + rev %Types #IMPLIED -- reverse link types -- + title CDATA #IMPLIED -- advisory title string -- + > +<!--=================== Images ============================================--> +<!ENTITY % Length "CDATA" -- nn for pixels or nn% for percentage length --> +<!ENTITY % Pixels "NUMBER" -- integer representing length in pixels --> +<!-- Suggested widths are used for negotiating image size + with the module responsible for painting the image. + align=left or right cause image to float to margin + and for subsequent text to wrap around image --> +<!ENTITY % IAlign "(top|middle|bottom|left|right)"> +<!ELEMENT IMG - O EMPTY -- Embedded image --> +<!ATTLIST IMG + src %URL #REQUIRED -- URL of image to embed -- + alt CDATA #IMPLIED -- for display in place of image -- + align %IAlign #IMPLIED -- vertical or horizontal alignment -- + height %Pixels #IMPLIED -- suggested height in pixels -- + width %Pixels #IMPLIED -- suggested width in pixels -- + border %Pixels #IMPLIED -- suggested link border width -- + hspace %Pixels #IMPLIED -- suggested horizontal gutter -- + vspace %Pixels #IMPLIED -- suggested vertical gutter -- + usemap %URL #IMPLIED -- use client-side image map -- + ismap (ismap) #IMPLIED -- use server image map -- + > +<!-- USEMAP points to a MAP element which may be in this document + or an external document, although the latter is not widely supported --> +<!--=================== Java APPLET tag ===================================--> +<!-- + This tag is supported by all Java enabled browsers. Applet resources + (including their classes) are normally loaded relative to the document + URL (or <BASE> element if it is defined). The CODEBASE attribute is used + to change this default behavior. If the CODEBASE attribute is defined then + it specifies a different location to find applet resources. The value + can be an absolute URL or a relative URL. The absolute URL is used as is + without modification and is not effected by the documents <BASE> element. + When the codebase attribute is relative, then it is relative to the + document URL (or <BASE> tag if defined). +--> +<!ELEMENT APPLET - - (PARAM | %text)*> +<!ATTLIST APPLET + codebase %URL #IMPLIED -- code base -- + code CDATA #REQUIRED -- class file -- + alt CDATA #IMPLIED -- for display in place of applet -- + name CDATA #IMPLIED -- applet name -- + width %Pixels #REQUIRED -- suggested width in pixels -- + height %Pixels #REQUIRED -- suggested height in pixels -- + align %IAlign #IMPLIED -- vertical or horizontal alignment -- + hspace %Pixels #IMPLIED -- suggested horizontal gutter -- + vspace %Pixels #IMPLIED -- suggested vertical gutter -- + > +<!ELEMENT PARAM - O EMPTY> +<!ATTLIST PARAM + name NMTOKEN #REQUIRED -- The name of the parameter -- + value CDATA #IMPLIED -- The value of the parameter -- + > +<!-- +Here is an example: + <applet codebase="applets/NervousText" + code=NervousText.class + width=300 + height=50> + <param name=text value="Java is Cool!"> + <img src=sorry.gif alt="This looks better with Java support"> + </applet> +--> +<!--=================== Horizontal Rule ===================================--> +<!ELEMENT HR - O EMPTY> +<!ATTLIST HR + align (left|right|center) #IMPLIED + noshade (noshade) #IMPLIED + size %Pixels #IMPLIED + width %Length #IMPLIED + > +<!--=================== Paragraphs=========================================--> +<!ELEMENT P - O (%text)*> +<!ATTLIST P + align (left|center|right) #IMPLIED + > +<!--=================== Headings ==========================================--> +<!-- + There are six levels of headers from H1 (the most important) + to H6 (the least important). +--> +<!ELEMENT ( %heading ) - - (%text;)*> +<!ATTLIST ( %heading ) + align (left|center|right) #IMPLIED + > +<!--=================== Preformatted Text =================================--> +<!-- excludes images and changes in font size --> +<!ENTITY % pre.exclusion "IMG|BIG|SMALL|SUB|SUP|FONT"> +<!ELEMENT PRE - - (%text)* -(%pre.exclusion)> +<!ATTLIST PRE + width NUMBER #implied -- is this widely supported? -- + > +<![ %HTML.Deprecated [ +<!ENTITY % literal "CDATA" + -- historical, non-conforming parsing mode where + the only markup signal is the end tag + in full + --> +<!ELEMENT (XMP|LISTING) - - %literal> +<!ELEMENT PLAINTEXT - O %literal> +]]> +<!--=================== Block-like Quotes =================================--> +<!ELEMENT BLOCKQUOTE - - %body.content> +<!--=================== Lists =============================================--> +<!-- + HTML 3.2 allows you to control the sequence number for ordered lists. + You can set the sequence number with the START and VALUE attributes. + The TYPE attribute may be used to specify the rendering of ordered + and unordered lists. +--> +<!-- definition lists - DT for term, DD for its definition --> +<!ELEMENT DL - - (DT|DD)+> +<!ATTLIST DL + compact (compact) #IMPLIED -- more compact style -- + > +<!ELEMENT DT - O (%text)*> +<!ELEMENT DD - O %flow;> +<!-- Ordered lists OL, and unordered lists UL --> +<!ELEMENT (OL|UL) - - (LI)+> +<!-- + Numbering style + 1 arablic numbers 1, 2, 3, ... + a lower alpha a, b, c, ... + A upper alpha A, B, C, ... + i lower roman i, ii, iii, ... + I upper roman I, II, III, ... + The style is applied to the sequence number which by default + is reset to 1 for the first list item in an ordered list. + This can't be expressed directly in SGML due to case folding. +--> +<!ENTITY % OLStyle "CDATA" -- constrained to: [1|a|A|i|I] --> +<!ATTLIST OL -- ordered lists -- + type %OLStyle #IMPLIED -- numbering style -- + start NUMBER #IMPLIED -- starting sequence number -- + compact (compact) #IMPLIED -- reduced interitem spacing -- + > +<!-- bullet styles --> +<!ENTITY % ULStyle "disc|square|circle"> +<!ATTLIST UL -- unordered lists -- + type (%ULStyle) #IMPLIED -- bullet style -- + compact (compact) #IMPLIED -- reduced interitem spacing -- + > +<!ELEMENT (DIR|MENU) - - (LI)+ -(%block)> +<!ATTLIST DIR + compact (compact) #IMPLIED + > +<!ATTLIST MENU + compact (compact) #IMPLIED + > +<!-- <DIR> Directory list --> +<!-- <DIR COMPACT> Compact list style --> +<!-- <MENU> Menu list --> +<!-- <MENU COMPACT> Compact list style --> +<!-- The type attribute can be used to change the bullet style + in unordered lists and the numbering style in ordered lists --> +<!ENTITY % LIStyle "CDATA" -- constrained to: "(%ULStyle|%OLStyle)" --> +<!ELEMENT LI - O %flow -- list item --> +<!ATTLIST LI + type %LIStyle #IMPLIED -- list item style -- + value NUMBER #IMPLIED -- reset sequence number -- + > +<!--======================= Tables ========================================--> +<!-- Widely deployed subset of the full table standard, see RFC 1942 + e.g. at http://www.ics.uci.edu/pub/ietf/html/rfc1942.txt --> +<!-- horizontal placement of table relative to window --> +<!ENTITY % Where "(left|center|right)"> +<!-- horizontal alignment attributes for cell contents --> +<!ENTITY % cell.halign + "align (left|center|right) #IMPLIED" + > +<!-- vertical alignment attributes for cell contents --> +<!ENTITY % cell.valign + "valign (top|middle|bottom) #IMPLIED" + > +<!ELEMENT table - - (caption?, tr+)> +<!ELEMENT tr - O (th|td)*> +<!ELEMENT (th|td) - O %body.content> +<!ATTLIST table -- table element -- + align %Where; #IMPLIED -- table position relative to window -- + width %Length #IMPLIED -- table width relative to window -- + border %Pixels #IMPLIED -- controls frame width around table -- + cellspacing %Pixels #IMPLIED -- spacing between cells -- + cellpadding %Pixels #IMPLIED -- spacing within cells -- + > +<!ELEMENT CAPTION - - (%text;)* -- table or figure caption --> +<!ATTLIST CAPTION + align (top|bottom) #IMPLIED + > +<!ATTLIST tr -- table row -- + %cell.halign; -- horizontal alignment in cells -- + %cell.valign; -- vertical alignment in cells -- + bgcolor %color; #IMPLIED -- row background color -- + height %Pixels; #IMPLIED -- height for row -- + > +<!ATTLIST (th|td) -- header or data cell -- + nowrap (nowrap) #IMPLIED -- suppress word wrap -- + rowspan NUMBER 1 -- number of rows spanned by cell -- + colspan NUMBER 1 -- number of cols spanned by cell -- + %cell.halign; -- horizontal alignment in cell -- + %cell.valign; -- vertical alignment in cell -- + width %Pixels #IMPLIED -- suggested width for cell -- + height %Pixels #IMPLIED -- suggested height for cell -- + > +<!--================ Document Head ========================================--> +<!-- %head.misc defined earlier on as "SCRIPT|STYLE|META|LINK" --> +<!ENTITY % head.content "TITLE & ISINDEX? & BASE?"> +<!ELEMENT HEAD O O (%head.content) +(%head.misc)> +<!ELEMENT TITLE - - (#PCDATA)* -(%head.misc) + -- The TITLE element is not considered part of the flow of text. + It should be displayed, for example as the page header or + window title. + --> +<!ELEMENT ISINDEX - O EMPTY> +<!ATTLIST ISINDEX + prompt CDATA #IMPLIED -- prompt message --> +<!-- + The BASE element gives an absolute URL for dereferencing relative + URLs, e.g. + <BASE href="http://foo.com/index.html"> + ... + <IMG SRC="images/bar.gif"> + The image is deferenced to + http://foo.com/images/bar.gif + In the absence of a BASE element the document URL should be used. + Note that this is not necessarily the same as the URL used to + request the document, as the base URL may be overridden by an HTTP + header accompanying the document. +--> +<!ELEMENT BASE - O EMPTY> +<!ATTLIST BASE + href %URL #REQUIRED + > +<!ELEMENT META - O EMPTY -- Generic Metainformation --> +<!ATTLIST META + http-equiv NAME #IMPLIED -- HTTP response header name -- + name NAME #IMPLIED -- metainformation name -- + content CDATA #REQUIRED -- associated information -- + > +<!-- SCRIPT/STYLE are place holders for transition to next version of HTML --> +<!ELEMENT STYLE - - CDATA -- placeholder for style info --> +<!ELEMENT SCRIPT - - CDATA -- placeholder for script statements --> +<!--================ Document Structure ===================================--> +<!ENTITY % version.attr "VERSION CDATA #FIXED '%HTML.Version;'"> +<![ %HTML.Deprecated [ + <!ENTITY % html.content "HEAD, BODY, PLAINTEXT?"> +]]> +<!ENTITY % html.content "HEAD, BODY"> +<!ELEMENT HTML O O (%html.content)> +<!ATTLIST HTML + %version.attr; + > diff --git a/htdocs/sgml-lib/catalog b/htdocs/sgml-lib/catalog index 932c5ea..7a366b8 100644 --- a/htdocs/sgml-lib/catalog +++ b/htdocs/sgml-lib/catalog @@ -1,6 +1,6 @@ -- SGML catalog for the W3C HTML Validation Service -- - -- $Id: catalog,v 1.15 2001-05-27 15:45:02 link Exp $ -- + -- $Id: catalog,v 1.16 2001-06-16 18:58:35 link Exp $ -- OVERRIDE YES -- prefer public identifiers to system identifiers -- @@ -147,3 +147,5 @@ PUBLIC "ISO/IEC 15445:2000//DTD HTML//EN" ISO-HTML/15445.dtd PUBLIC "-//W3C//ENTITIES Full Latin 1//EN//HTML" REC-html401-19991224/HTMLlat1.ent PUBLIC "-//W3C//ENTITIES Symbolic//EN//HTML" REC-html401-19991224/HTMLsymbol.ent +PUBLIC "-//bebop.net//DTD HTML Apple Help 1.0//EN" AppleHelp1.0.dtd + |