File:
[Public] /
Amaya /
amaya /
amaya.h
Revision
1.238:
download - view:
text,
annotated -
select for diffs
Thu Sep 12 17:07:15 2002 UTC (21 years, 9 months ago) by
kahan
Branches:
MAIN
CVS tags:
HEAD
JK: First try at supporting full content location referencing as
stated in RFC 2616.
The Doc Info now shows the full content location URI, not just the
document name.
To be done: check how the content location metadata is updated when
doing a SaveAs from a local URL to a remote one.
To disable this feature, go th AHTURLTools.c:GetBaseURL and make the
full_content_location fail e.g., by saying if (0).
/*
*
* (c) COPYRIGHT MIT and INRIA, 1996-2002
* Please first read the full copyright statement in file COPYRIGHT.
*
*/
#ifndef AMAYA_H
#define AMAYA_H
/* Thot interface */
#include "thot_gui.h"
#include "thot_sys.h"
#include "appstruct.h"
#include "application.h"
#include "attribute.h"
#include "browser.h"
#include "content.h"
#include "dialog.h"
#include "fileaccess.h"
#include "interface.h"
#include "libmsg.h"
#include "message.h"
#include "presentation.h"
#include "selection.h"
#include "reference.h"
#include "tree.h"
#include "view.h"
#include "uconvert.h"
#include "undo.h"
/* Included headerfiles */
#include "EDITOR.h"
#include "HTML.h"
#include "MathML.h"
#include "SVG.h"
#include "TextFile.h"
#include "XML.h"
#include "amayamsg.h"
#include "parser.h"
#define NAME_LENGTH 32
#define HTAppName "amaya"
#define HTAppVersion "6.3"
#define HTAppDate " 9 September 2002"
#define URL_STR "/"
#define URL_SEP '/'
/* Number of views used in Amaya */
#define AMAYA_MAX_VIEW_DOC 7
/* the type of character convertion we want to make on local URLs */
typedef enum _ConvertionType
{
AM_CONV_NONE = 0,
AM_CONV_URL_SEP = 0x1, /* converts URL_SEPs into DIR_SEPs */
AM_CONV_PERCENT = 0x2, /* converts %xx into the equiv. char */
AM_CONV_ALL = 0xFFFF /* do everything */
}
ConvertionType;
/* the HTTP header name we want to make visible to the application */
typedef enum _AHTHeaderName
{
AM_HTTP_CONTENT_TYPE = 0,
AM_HTTP_CHARSET = 1,
AM_HTTP_CONTENT_LENGTH = 2,
AM_HTTP_REASON = 3,
AM_HTTP_CONTENT_LOCATION = 4,
AM_HTTP_FULL_CONTENT_LOCATION = 5
}
AHTHeaderName;
/* the structure used for exchanging HTTP header info between the net library
and amaya */
typedef struct _AHTHeaders
{
char *content_type;
char *charset;
char *content_length;
char *reason;
char *content_location;
char *full_content_location;
}
AHTHeaders;
/* The structures used for request callbacks */
typedef void TIcbf (Document doc, int status, char *urlName,
char *outputfile, const AHTHeaders *http_headers,
const char *data_block, int data_block_size,
void *context);
typedef void TTcbf (Document doc, int status, char *urlName,
char *outputfile, const AHTHeaders *http_headers,
void *context);
/* How are Network accesses provided ? */
#include "libwww.h"
/* The different events to open a new document */
typedef enum _ClickEvent {
CE_ABSOLUTE, CE_RELATIVE, CE_FORM_POST, CE_FORM_GET,
CE_HELP, CE_MAKEBOOK, CE_LOG , CE_TEMPLATE, CE_INIT,
CE_CSS, CE_ANNOT
} ClickEvent;
#define NO 0
#define YES 1
/* dialogues */
#define URLForm 1
#define OpenForm 2
#define URLName 3
#define LocalName 4
#define DirSelect 5
#define DocSelect 6
#define StopCommand 7
#define SaveForm 8
#define DirSave 9
#define DocSave 10
#define ToggleSave 11
#define NameSave 12
#define ImgDirSave 13
#define ConfirmForm 14
#define ConfirmText 15
#define AttrHREFForm 16
#define AttrHREFText 17
#define FormAnswer 18
#define RealmText 19
#define AnswerText 20
#define NameText 21
#define PasswordText 22
#define FilterText 23
#define ClassForm 24
#define ClassSelect 25
#define AClassForm 26
#define AClassSelect 27
#define ConfirmSave 28
#define ConfirmSaveList 29
#define BrowserDirSelect 30
#define BrowserDocSelect 31
#define BrowserFilterText 32
#define HREFLocalName 33
#define MakeIdMenu 34
#define mElemName 35
#define mAddId 36
#define mRemoveId 37
#define mIdUseSelection 38
#define mIdStatus 39
#define FileBrowserForm 40
#define FileBrowserText 41
#define FileBrowserFilter 42
#define FileBrowserLocalName 43
#define MimeTypeForm 44
#define MimeTypeSel 45
#define MimeTypeSave 46
#define CharsetForm 47
#define CharsetSave 48
#define CharsetSel 49
#define RadioSave 50
#define MimeFormStatus 51
#define SaveFormStatus 52
/* do not add items before this entry */
#define OptionMenu 53
/* MAX_SUBMENUS references reserved for submenus of Option menu */
/* Do not insert new entries here */
#define MAX_SUBMENUS 400
#define Label1 54 /* no callback */
#define Label2 55 /* no callback */
#define Label3 56 /* no callback */
#define Label4 57 /* no callback */
#define About1 58 /* no callback */
#define About2 59 /* no callback */
#define About3 60 /* no callback */
#define Version 61 /* no callback */
#define CharsetSaveL 62 /* no callback */
#define MimeTypeSaveL 63 /* no callback */
/* first callback available: 454 */
#define AboutForm 454
#define TableForm 455
#define TableRows 456
#define TableCols 457
#define TableBorder 458
#define MathEntityForm 459
#define MathEntityText 460
#define TitleForm 461
#define TitleText 462
#define DocInfoForm 463
#define DocInfoMimeTypeTitle 464
#define DocInfoMimeType 465
#define DocInfoCharsetTitle 466
#define DocInfoCharset 467
#define DocInfoContentTitle 468
#define DocInfoContent 469
#define DocInfoURLTitle 470
#define DocInfoURL 471
#define DocInfoTitle1 472
#define DocInfoTitle2 473
#define DocInfoContent1 474
#define DocInfoContent2 475
#define DocInfoLocationTitle 476
#define DocInfoLocation 477
#define DocInfoDocTypeTitle 478
#define DocInfoDocType 479
#define MAX_REF 480
#define FormPrint 1
#define PrintOptions 2
#define PaperFormat 3
#define PrintSupport 4
#define PPrinterName 5
#define PaperOrientation 6
#define PPagesPerSheet 7
#define PRINT_MAX_REF 8
#define FormLibrary 1
#define CopySVGLibSelection 2
#define ReferToSVGLibSelection 3
#define AddSVGModel 4
#define NewSVGFileURL 5
#define SVGLibCatalogueTitle 6
#define SVGLibraryLabel 7
#define SVGLibraryLabel1 8
#define SVGLibraryLabel2 9
#define SVGLibraryLabel3 10
#define NewSVGLibraryTitle 11
#define NewSVGLibrary 12
#define SVGLibraryURL 13
#define SVGFileDir 14
#define SVGFileSel 15
#define SVGFilter 16
#define SVGLibraryDir 17
#define SVGLibrarySel 18
#define LibraryFilter 19
#define SVGFileBrowser 20
#define SVGFileBrowserText 21
#define SVGLibFileBrowser 22
#define SVGLibFileBrowserText 23
#define LIBRARY_MAX_REF 24
#define ImageURL 1
#define ImageLabel 2
#define ImageLabel2 3
#define ImageLabel3 4
#define ImageLabel4 5
#define ImageDir 6
#define ImageSel 7
#define ImageFilter 8
#define FormImage 9
#define RepeatImage 10
#define FormBackground 11
#define ImageAlt 12
#define FormAlt 13
#define IMAGE_MAX_REF 14
#define CSSForm 0
#define CSSSelect 1
#define MAX_CSS_REF 2
#define FormMaths 0
#define MenuMaths 1
#define MenuMaths1 2
#define MAX_MATHS 3
#define FormGraph 0
#define MenuGraph 1
#define MenuGraph1 2
#define MAX_GRAPH 3
/* The possible GET/POST/PUT request modes */
/*synchronous request*/
#define AMAYA_SYNC 1 /*0x000001 */
/*synchronous request with incremental callbacks */
#define AMAYA_ISYNC 2 /*0x000010 */
/*asynchronous request */
#define AMAYA_ASYNC 4 /*0x000100 */
/*asynchronous request with incremental callbacks */
#define AMAYA_IASYNC 8 /*0x001000 */
/* send the form using the POST HTTP method */
#define AMAYA_FORM_POST 16 /*0x010000 */
/* send the form using the GET HTTP method */
#define AMAYA_FORM_GET 32 /*0x100000 */
/* bypass caching */
#define AMAYA_NOCACHE 64
/* don't follow redirections */
#define AMAYA_NOREDIR 128
/* Prevents a stop race condition in ASYNC transfers */
#define AMAYA_ASYNC_SAFE_STOP 256
#define AMAYA_LOAD_CSS 512
#define AMAYA_FLUSH_REQUEST 1024
#define AMAYA_USE_PRECONDITIONS 2048
#define AMAYA_LOAD_IMAGE 4096
/* post an annonation */
#define AMAYA_FILE_POST 8192
/* delete an annotation */
#define AMAYA_DELETE 16384
#define AMAYA_MBOOK_IMAGE 32768
/*
* Flags to indicate the action to take when the network options
* are modified
*/
#define AMAYA_CACHE_RESTART 1
#define AMAYA_PROXY_RESTART 2
#define AMAYA_LANNEG_RESTART 4
#define AMAYA_SAFEPUT_RESTART 8
/*
* Flags to indicate the status of the network requests associated
* to a document.
*/
#define AMAYA_NET_INACTIVE 1
#define AMAYA_NET_ERROR 2
#define AMAYA_NET_ACTIVE 4
/*
* Flags for HTParse, specifying which parts of the URL are needed
*/
#define AMAYA_PARSE_ACCESS 16 /* Access scheme, e.g. "HTTP" */
#define AMAYA_PARSE_HOST 8 /* Host name, e.g. "www.w3.org" */
#define AMAYA_PARSE_PATH 4 /* URL Path, e.g. "pub/WWW/TheProject.html" */
#define AMAYA_PARSE_ANCHOR 2 /* Fragment identifier, e.g. "news" */
#define AMAYA_PARSE_PUNCTUATION 1 /* Include delimiters, e.g, "/" and ":" */
#define AMAYA_PARSE_ALL 31 /* All the parts */
THOT_EXPORT int AMAYA; /* Index of amaya message table */
THOT_EXPORT int appArgc;
THOT_EXPORT char **appArgv;
THOT_EXPORT char TempFileDirectory[MAX_LENGTH];
THOT_EXPORT char Answer_text[MAX_LENGTH];
THOT_EXPORT char Answer_name[NAME_LENGTH];
THOT_EXPORT char Answer_password[NAME_LENGTH];
THOT_EXPORT char Display_password[NAME_LENGTH];
THOT_EXPORT char ScanFilter[NAME_LENGTH]; /* to scan directories */
THOT_EXPORT char MathMLEntityName[MAX_LENGTH]; /* entity name typed by the user for a MathML expression */
THOT_EXPORT char IdElemName[MAX_LENGTH]; /* element name typed by the user from the MakeID menu */
THOT_EXPORT char IdStatus[50]; /* element name typed by the user from the MakeID menu */
THOT_EXPORT char ImgFilter[NAME_LENGTH];
THOT_EXPORT char *LastURLName; /* last URL requested */
THOT_EXPORT char *DirectoryName; /* local path of the document */
THOT_EXPORT char *DocumentName; /* document name */
THOT_EXPORT char *SavePath; /* saving path */
THOT_EXPORT char *SaveName; /* saving name of the document */
THOT_EXPORT char *ObjectName; /* document name */
THOT_EXPORT char *SaveImgsURL; /* where to save remote Images */
THOT_EXPORT char *TargetName;
THOT_EXPORT char *SavingFile; /* complete path or URL of the document */
THOT_EXPORT char *SavedDocumentURL;/* URL of the document that contained
the elements that are now in the
Cut and Paste buffer */
THOT_EXPORT char UserMimeType[MAX_LENGTH];
/* Used to pass the user's MIME type
choice when doing a Save As of a
local object to a server */
THOT_EXPORT char UserCharset[MAX_LENGTH];
/* Used to pass the user's charset
choice when doing a Save As of a
local object to a server */
THOT_EXPORT char SaveFormTmp[MAX_LENGTH];
/* Used for storing the temporary
changes in the ChangeCharset and
ChangeMimetype forms */
THOT_EXPORT int Lg_password;
THOT_EXPORT int BaseDialog;
THOT_EXPORT int BasePrint;
THOT_EXPORT int BaseImage;
THOT_EXPORT int MathsDialogue;
THOT_EXPORT int GraphDialogue;
THOT_EXPORT int BaseCSS;
THOT_EXPORT int ReturnOption;
THOT_EXPORT int NumberRows;
THOT_EXPORT int NumberCols;
THOT_EXPORT int TBorder;
THOT_EXPORT int ReturnOptionMenu;
THOT_EXPORT int IdDoc;
THOT_EXPORT int BaseLibrary;
THOT_EXPORT Document CurrentDocument;
THOT_EXPORT Document SavingDocument;
THOT_EXPORT Document SavingObject;
THOT_EXPORT Document AttrHREFdocument;
THOT_EXPORT Document DocBook;
THOT_EXPORT Document IncludedDocument;
THOT_EXPORT Element AttrHREFelement;
THOT_EXPORT char *AttrHREFvalue;
THOT_EXPORT Document SelectionDoc;
THOT_EXPORT ThotBool IsNewAnchor;
THOT_EXPORT ThotBool UseLastTarget;
THOT_EXPORT ThotBool LinkAsCSS;
THOT_EXPORT ThotBool SaveAsHTML;
THOT_EXPORT ThotBool SaveAsXML;
THOT_EXPORT ThotBool SaveAsText;
THOT_EXPORT ThotBool CopyImages; /* should we copy images in Save As */
THOT_EXPORT ThotBool UpdateURLs; /* should we update URLs in Save As */
THOT_EXPORT ThotBool UserAnswer;
THOT_EXPORT ThotBool InNewWindow;
THOT_EXPORT ThotBool SelectionInPRE;
THOT_EXPORT ThotBool SelectionInComment;
THOT_EXPORT ThotBool SelectionInEM;
THOT_EXPORT ThotBool SelectionInSTRONG;
THOT_EXPORT ThotBool SelectionInCITE;
THOT_EXPORT ThotBool SelectionInABBR;
THOT_EXPORT ThotBool SelectionInACRONYM;
THOT_EXPORT ThotBool SelectionInINS;
THOT_EXPORT ThotBool SelectionInDEL;
THOT_EXPORT ThotBool SelectionInDFN;
THOT_EXPORT ThotBool SelectionInCODE;
THOT_EXPORT ThotBool SelectionInVAR;
THOT_EXPORT ThotBool SelectionInSAMP;
THOT_EXPORT ThotBool SelectionInKBD;
THOT_EXPORT ThotBool SelectionInI;
THOT_EXPORT ThotBool SelectionInB;
THOT_EXPORT ThotBool SelectionInTT;
THOT_EXPORT ThotBool SelectionInBIG;
THOT_EXPORT ThotBool SelectionInSMALL;
THOT_EXPORT ThotBool SelectionInSub;
THOT_EXPORT ThotBool SelectionInSup;
THOT_EXPORT ThotBool SelectionInQuote;
THOT_EXPORT ThotBool SelectionInBDO;
THOT_EXPORT ThotBool HTMLErrorsFound;
THOT_EXPORT ThotBool XMLErrorsFound;
THOT_EXPORT ThotBool CSSErrorsFound;
THOT_EXPORT ThotBool XMLErrorsFoundInProfile;
THOT_EXPORT ThotBool XMLNotWellFormed;
THOT_EXPORT ThotBool XMLCharacterNotSupported;
THOT_EXPORT ThotBool XMLUnknownEncoding;
THOT_EXPORT ThotBool IdApplyToSelection; /* used in the Make ID menu */
THOT_EXPORT FILE *ErrFile;
typedef enum
{
docHTML,
docText,
docImage,
docCSS,
docSource,
docAnnot,
docLog,
docSVG,
docMath,
docXml,
docLibrary
} DocumentType;
/* a record for data associated with a request */
typedef struct _DocumentMetaDataElement
{
char *initial_url; /* if the server returns a different URL name
after a redirection, we store here the one
that the browser first asked */
char *form_data; /* form data associated with a URL */
char *content_type; /* content type returned by the server */
char *charset; /* charset returned by the server */
char *content_length; /* content length returned by the server */
char *content_location; /* simplified content location returned by the server */
char *full_content_location; /* full content location returned by the server */
ClickEvent method; /* method used to send this data */
ThotBool xmlformat; /* the document should be exported in xml format */
#ifdef ANNOTATIONS
Document source_doc; /* if the document is an annotation,
this variable giveso the annoted document
docid */
#endif /* ANNOTATIONS */
} DocumentMetaDataElement;
#define DocumentTableLength MAX_DOCUMENTS
/* URL of each loaded document */
THOT_EXPORT char *DocumentURLs[DocumentTableLength];
/* Any formdata associated with a URL */
THOT_EXPORT DocumentMetaDataElement *DocumentMeta[DocumentTableLength];
/* Type of document */
THOT_EXPORT DocumentType DocumentTypes[DocumentTableLength];
/* Document is in read only mode */
THOT_EXPORT ThotBool ReadOnlyDocument[DocumentTableLength];
/* Document with section numbering */
THOT_EXPORT ThotBool SNumbering[DocumentTableLength];
/* Document that shows buttons */
THOT_EXPORT ThotBool SButtons[DocumentTableLength];
/* Document that shows address */
THOT_EXPORT ThotBool SAddress[DocumentTableLength];
/* Document that shows map areas */
THOT_EXPORT ThotBool MapAreas[DocumentTableLength];
/* identifier of the document displaying the source code */
THOT_EXPORT Document DocumentSource[DocumentTableLength];
/* The whole document is loaded when the corresponding entry in FilesLoading is 0 */
THOT_EXPORT int FilesLoading[DocumentTableLength];
/* Status (error, success) of the download of the objects of a document */
THOT_EXPORT int DocNetworkStatus[DocumentTableLength];
THOT_EXPORT Document W3Loading; /* the document being loaded */
THOT_EXPORT Document BackupDocument; /* the current backup */
/* button indexes */
THOT_EXPORT int iStop;
THOT_EXPORT int iBack;
THOT_EXPORT int iForward;
THOT_EXPORT int iReload;
THOT_EXPORT int iHome;
THOT_EXPORT int iEditor;
THOT_EXPORT int iSave;
THOT_EXPORT int iPrint;
THOT_EXPORT int iFind;
THOT_EXPORT int iI;
THOT_EXPORT int iB;
THOT_EXPORT int iT;
THOT_EXPORT int iImage;
THOT_EXPORT int iH1;
THOT_EXPORT int iH2;
THOT_EXPORT int iH3;
THOT_EXPORT int iBullet;
THOT_EXPORT int iNum;
THOT_EXPORT int iDL;
THOT_EXPORT int iLink;
THOT_EXPORT int iTable;
#define IMAGE_NOT_LOADED 0
#define IMAGE_LOCAL 1
#define IMAGE_LOADED 2
#define IMAGE_MODIFIED 3
typedef void (*LoadedImageCallback)(Document doc, Element el, char *file, void *extra);
typedef struct _ElemImage
{
Element currentElement;/* first element using this image */
struct _ElemImage *nextElement;
LoadedImageCallback callback; /* Callback for non-standard handling */
void *extra; /* any extra info for the CallBack */
}
ElemImage;
typedef struct _LoadedImageDesc
{
char *originalName; /* complete URL of the image */
char *localName; /* local name (without path) of the image */
char *content_type; /* the MIME type as sent by the server */
struct _LoadedImageDesc *prevImage;/* double linked list */
struct _LoadedImageDesc *nextImage;/* easier to unchain */
Document document; /* document concerned */
struct _ElemImage *elImage; /* first element using this image */
int imageType; /* the type of the image */
int status; /* the status of the image loading */
}
LoadedImageDesc;
/* the structure used for storing the context of the
FetchAndDisplayImages_callback function */
typedef struct _FetchImage_context {
char *base_url;
LoadedImageDesc *desc;
} FetchImage_context;
THOT_EXPORT LoadedImageDesc *ImageURLs;
THOT_EXPORT LoadedImageDesc *ImageLocal;
/* The default Amaya HOME pages (page shown at boot time */
#define AMAYA_PAGE "AmayaPage.html"
#define AMAYA_PAGE_DOC "http://www.w3.org/Amaya/User/"
#ifndef MAX_TXT_LEN
#define MAX_TXT_LEN 1024 /* Max. length of strings */
#endif /* MAX_TXT_LEN */
/* a collection of the XML MIME types that keep changing and that we use in Amaya */
#define AM_XHTML_MIME_TYPE "application/xhtml+xml"
#define AM_SVG_MIME_TYPE "image/svg+xml"
#define AM_MATHML_MIME_TYPE "application/mathml+xml"
#define AM_GENERIC_XML_MIME_TYPE "text/xml"
/* Doctype declarations used in Amaya */
#define DOCTYPE1_HTML_STRICT "<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\""
#define DOCTYPE1_HTML_TRANSITIONAL "<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\""
#define DOCTYPE1_XHTML10_BASIC "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML Basic 1.0//EN\""
#define DOCTYPE1_XHTML10_STRICT "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\""
#define DOCTYPE1_XHTML11 "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1//EN\""
#define DOCTYPE1_XHTML11_PLUS_MATHML "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN\""
#define DOCTYPE1_XHTML11_PLUS_MATHML_PLUS_SVG "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN\""
#define DOCTYPE1_XHTML10_TRANSITIONAL "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\""
#define DOCTYPE1_MATHML20 "<!DOCTYPE math PUBLIC \"-//W3C//DTD MathML 2.0//EN\""
#define DOCTYPE1_SVG10 "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.0//EN\""
#define DOCTYPE2_HTML_STRICT " \"http://www.w3.org/TR/html4/strict.dtd\">"
#define DOCTYPE2_HTML_TRANSITIONAL " \"http://www.w3.org/TR/html4/loose.dtd\">"
#define DOCTYPE2_XHTML10_BASIC " \"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd\">"
#define DOCTYPE2_XHTML10_STRICT " \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">"
#define DOCTYPE2_XHTML11 " \"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">"
#define DOCTYPE2_XHTML11_PLUS_MATHML " \"http://www.w3.org/TR/MathML2/dtd/xhtml-math11-f.dtd\">"
#define DOCTYPE2_XHTML11_PLUS_MATHML_PLUS_SVG " \"http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd\">"
#define DOCTYPE2_XHTML10_TRANSITIONAL " \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">"
#define DOCTYPE2_MATHML20 " \"http://www.w3.org/TR/MathML2/dtd/mathml2.dtd\">"
#define DOCTYPE2_SVG10 " \"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd\">"
#define MATHML_XSLT_NAME "pmathml.xsl"
#define MATHML_XSLT_URI "<!-- Processing Instruction generated by Amaya; the stylesheet is\n available on the W3C site at http://www.w3.org/Math/XSL/pmathml.xsl -->\n<?xml-stylesheet type=\"text/xsl\" href=\""
#endif /* AMAYA_H */
Webmaster