summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/xml/xpath
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/xml/xpath')
-rw-r--r--offapi/com/sun/star/xml/xpath/Libxml2ExtensionHandle.idl49
-rw-r--r--offapi/com/sun/star/xml/xpath/XPathAPI.idl14
-rw-r--r--offapi/com/sun/star/xml/xpath/XPathException.idl50
-rw-r--r--offapi/com/sun/star/xml/xpath/XPathExtension.idl14
-rw-r--r--offapi/com/sun/star/xml/xpath/XPathObjectType.idl51
-rw-r--r--offapi/com/sun/star/xml/xpath/XXPathAPI.idl207
-rw-r--r--offapi/com/sun/star/xml/xpath/XXPathExtension.idl47
-rw-r--r--offapi/com/sun/star/xml/xpath/XXPathObject.idl102
-rw-r--r--offapi/com/sun/star/xml/xpath/makefile.mk60
9 files changed, 594 insertions, 0 deletions
diff --git a/offapi/com/sun/star/xml/xpath/Libxml2ExtensionHandle.idl b/offapi/com/sun/star/xml/xpath/Libxml2ExtensionHandle.idl
new file mode 100644
index 000000000000..7b9eac727f52
--- /dev/null
+++ b/offapi/com/sun/star/xml/xpath/Libxml2ExtensionHandle.idl
@@ -0,0 +1,49 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_xml__xpath_Libxml2ExtensionHandle_idl__
+#define __com_sun_star_xml_Libxml2ExtensionHandle_idl__
+
+//=============================================================================
+
+ module com { module sun { module star { module xml { module xpath {
+
+//=============================================================================
+
+struct Libxml2ExtensionHandle
+{
+ hyper functionLookupFunction;
+ hyper functionData;
+ hyper variableLookupFunction;
+ hyper variableData;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/xml/xpath/XPathAPI.idl b/offapi/com/sun/star/xml/xpath/XPathAPI.idl
new file mode 100644
index 000000000000..67d771b3ea66
--- /dev/null
+++ b/offapi/com/sun/star/xml/xpath/XPathAPI.idl
@@ -0,0 +1,14 @@
+#ifndef __com_sun_star_xml_xpath_XPathExtension_idl__
+#define __com_sun_star_xml_xpath_XPathExtension_idl__
+#ifndef __com_sun_star_xml_xpath_XXPathAPI_idl
+#include <com/sun/star/xml/xpath/XXPathAPI.idl>
+#endif
+module com { module sun { module star { module xml { module xpath {
+
+ service XPathExtension
+ {
+ interface XXPathAPI;
+ };
+};};};};};
+#endif
+
diff --git a/offapi/com/sun/star/xml/xpath/XPathException.idl b/offapi/com/sun/star/xml/xpath/XPathException.idl
new file mode 100644
index 000000000000..37ee4eb789bb
--- /dev/null
+++ b/offapi/com/sun/star/xml/xpath/XPathException.idl
@@ -0,0 +1,50 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+************************************************************************/
+
+#ifndef __com_sun_star_xml_XPath_XPathException_idl__
+#define __com_sun_star_xml_XPath_XPathException_idl__
+
+#ifndef __com_sun_star_uno_Exception_idl__
+#include <com/sun/star/uno/Exception.idl>
+#endif
+
+
+module com { module sun { module star { module xml { module xpath {
+
+//=============================================================================
+/** Exception that may occur when evaluating an XPath expression.
+
+ @since OOo 3.0
+
+ @see XXPathAPI
+ */
+exception XPathException : com::sun::star::uno::Exception
+{
+};
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/xml/xpath/XPathExtension.idl b/offapi/com/sun/star/xml/xpath/XPathExtension.idl
new file mode 100644
index 000000000000..d286cc0a817e
--- /dev/null
+++ b/offapi/com/sun/star/xml/xpath/XPathExtension.idl
@@ -0,0 +1,14 @@
+#ifndef __com_sun_star_xml_xpath_XPathExtension_idl__
+#define __com_sun_star_xml_xpath_XPathExtension_idl__
+#ifndef __com_sun_star_xml_xpath_XXPathExtension_idl
+#include <com/sun/star/xml/xpath/XXPathExtension.idl>
+#endif
+module com { module sun { module star { module xml { module xpath {
+
+ service XPathExtension
+ {
+ interface XXPathExtension;
+ };
+};};};};};
+#endif
+
diff --git a/offapi/com/sun/star/xml/xpath/XPathObjectType.idl b/offapi/com/sun/star/xml/xpath/XPathObjectType.idl
new file mode 100644
index 000000000000..c0445f9bd2f3
--- /dev/null
+++ b/offapi/com/sun/star/xml/xpath/XPathObjectType.idl
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_xml_XPath_XObjectType_idl__
+#define __com_sun_star_xml_XPath_XObjectType_idl__
+
+module com { module sun { module star { module xml { module xpath {
+
+
+enum XPathObjectType
+{
+ XPATH_UNDEFINED,
+ XPATH_NODESET,
+ XPATH_BOOLEAN,
+ XPATH_NUMBER,
+ XPATH_STRING,
+ XPATH_POINT,
+ XPATH_RANGE,
+ XPATH_LOCATIONSET,
+ XPATH_USERS,
+ XPATH_XSLT_TREE
+
+};
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/xml/xpath/XXPathAPI.idl b/offapi/com/sun/star/xml/xpath/XXPathAPI.idl
new file mode 100644
index 000000000000..e3501947cb4c
--- /dev/null
+++ b/offapi/com/sun/star/xml/xpath/XXPathAPI.idl
@@ -0,0 +1,207 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_xml_XPath_XXPathAPI_idl__
+#define __com_sun_star_xml_XPath_XXPathAPI_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+#ifndef __com_sun_star_xml_dom_XNode_idl__
+#include <com/sun/star/xml/dom/XNode.idl>
+#endif
+#ifndef __com_sun_star_xml_dom_XNodeList_idl__
+#include <com/sun/star/xml/dom/XNodeList.idl>
+#endif
+#ifndef __com_sun_star_xml_xpath_XXPathObject_idl__
+#include <com/sun/star/xml/xpath/XXPathObject.idl>
+#endif
+#ifndef __com_sun_star_xml_xpath_XXPathExtension_idl__
+#include <com/sun/star/xml/xpath/XXPathExtension.idl>
+#endif
+#ifndef __com_sun_star_xml_XPath_XPathException_idl__
+#include <com/sun/star/xml/xpath/XPathException.idl>
+#endif
+
+
+module com { module sun { module star { module xml { module xpath {
+
+
+interface XXPathAPI : com::sun::star::uno::XInterface
+{
+
+ void registerNS(
+ [in] string prefix,
+ [in] string url);
+
+ void unregisterNS(
+ [in] string prefix,
+ [in] string url);
+
+ void registerExtension( [in] string serviceName );
+ void registerExtensionInstance(
+ [in] com::sun::star::xml::xpath::XXPathExtension aExtension);
+
+ /** Eval XPath Expression.
+
+ @param contextNode
+ the context node (expression is relative to this node)
+
+ @param expr
+ the XPath expression
+
+ @throws XPathException
+ if the expression is malformed, or evaluation fails
+
+ @returns
+ an object representing the result of the XPath evaluation
+
+ @see XXPathObject
+ */
+ XXPathObject eval(
+ [in] com::sun::star::xml::dom::XNode contextNode,
+ [in] string expr)
+ raises( com::sun::star::xml::xpath::XPathException );
+
+ /** Eval XPath Expression.
+
+ @param contextNode
+ the context node (expression is relative to this node)
+
+ @param expr
+ the XPath expression
+
+ @param namespaceNode
+ all namespaces declared on this node will be registered
+
+ @throws XPathException
+ if the expression is malformed, or evaluation fails
+
+ @returns
+ an object representing the result of the XPath evaluation
+
+ @see XXPathObject
+ */
+ XXPathObject evalNS(
+ [in] com::sun::star::xml::dom::XNode contextNode,
+ [in] string expr,
+ [in] com::sun::star::xml::dom::XNode namespaceNode)
+ raises( com::sun::star::xml::xpath::XPathException );
+
+ /** Evaluate an XPath expression to select a list of nodes.
+
+ @param contextNode
+ the context node (expression is relative to this node)
+
+ @param expr
+ the XPath expression
+
+ @throws XPathException
+ if the expression is malformed, or evaluation fails
+
+ @returns
+ result of the XPath evaluation: a list of nodes
+
+ @see XNodeList
+ */
+ com::sun::star::xml::dom::XNodeList selectNodeList(
+ [in] com::sun::star::xml::dom::XNode contextNode,
+ [in] string expr)
+ raises( com::sun::star::xml::xpath::XPathException );
+
+ /** Evaluate an XPath expression to select a list of nodes.
+
+ @param contextNode
+ the context node (expression is relative to this node)
+
+ @param expr
+ the XPath expression
+
+ @param namespaceNode
+ all namespaces declared on this node will be registered
+
+ @throws XPathException
+ if the expression is malformed, or evaluation fails
+
+ @returns
+ result of the XPath evaluation: a list of nodes
+
+ @see XNodeList
+ */
+ com::sun::star::xml::dom::XNodeList selectNodeListNS(
+ [in] com::sun::star::xml::dom::XNode contextNode,
+ [in] string str,
+ [in] com::sun::star::xml::dom::XNode namespaceNode)
+ raises( com::sun::star::xml::xpath::XPathException );
+
+ /** Evaluate an XPath expression to select a single node.
+
+ @param contextNode
+ the context node (expression is relative to this node)
+
+ @param expr
+ the XPath expression
+
+ @throws XPathException
+ if the expression is malformed, or evaluation fails
+
+ @returns
+ result of the XPath evaluation: a single node
+ */
+ com::sun::star::xml::dom::XNode selectSingleNode(
+ [in] com::sun::star::xml::dom::XNode contextNode,
+ [in] string expr)
+ raises( com::sun::star::xml::xpath::XPathException );
+
+ /** Evaluate an XPath expression to select a single node.
+
+ @param contextNode
+ the context node (expression is relative to this node)
+
+ @param expr
+ the XPath expression
+
+ @param namespaceNode
+ all namespaces declared on this node will be registered
+
+ @throws XPathException
+ if the expression is malformed, or evaluation fails
+
+ @returns
+ result of the XPath evaluation: a single node
+ */
+ com::sun::star::xml::dom::XNode selectSingleNodeNS(
+ [in] com::sun::star::xml::dom::XNode contextNode,
+ [in] string str,
+ [in] com::sun::star::xml::dom::XNode namespaceNode)
+ raises( com::sun::star::xml::xpath::XPathException );
+
+};
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/xml/xpath/XXPathExtension.idl b/offapi/com/sun/star/xml/xpath/XXPathExtension.idl
new file mode 100644
index 000000000000..527c37ba46f3
--- /dev/null
+++ b/offapi/com/sun/star/xml/xpath/XXPathExtension.idl
@@ -0,0 +1,47 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_xml_XPath_XXPathExtension_idl__
+#define __com_sun_star_xml_XPath_XXPathExtension_idl__
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+#ifndef __com__sun_star_xml_xpath_Libxml2ExtensionHandle_idl__
+#include <com/sun/star/xml/xpath/Libxml2ExtensionHandle.idl>
+#endif
+
+module com { module sun { module star { module xml { module xpath {
+
+
+interface XXPathExtension : com::sun::star::uno::XInterface
+{
+ Libxml2ExtensionHandle getLibxml2ExtensionHandle();
+};
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/xml/xpath/XXPathObject.idl b/offapi/com/sun/star/xml/xpath/XXPathObject.idl
new file mode 100644
index 000000000000..3371a17fe93c
--- /dev/null
+++ b/offapi/com/sun/star/xml/xpath/XXPathObject.idl
@@ -0,0 +1,102 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_xml_XPath_XXPathObject_idl__
+#define __com_sun_star_xml_XPath_XXPathObject_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+#ifndef __com_sun_star_xml_dom_XNode_idl__
+#include <com/sun/star/xml/dom/XNode.idl>
+#endif
+#ifndef __com_sun_star_xml_dom_XNodeList_idl__
+#include <com/sun/star/xml/dom/XNodeList.idl>
+#endif
+#ifndef __com_sun_star_xml_XPath_XObjectType_idl__
+#include <com/sun/star/xml/xpath/XPathObjectType.idl>
+#endif
+
+module com { module sun { module star { module xml { module xpath {
+
+
+interface XXPathObject : com::sun::star::uno::XInterface
+{
+ /**
+ get object type
+ */
+ XPathObjectType getObjectType();
+
+ /**
+ get the nodes from a nodelist type object
+ */
+ com::sun::star::xml::dom::XNodeList getNodeList();
+
+ /**
+ get value of a boolean object
+ */
+ boolean getBoolean();
+
+ /**
+ get number as byte
+ */
+ byte getByte();
+
+ /**
+ get number as short
+ */
+ short getShort();
+
+ /**
+ get number as long
+ */
+ long getLong();
+
+ /**
+ get number as hyper
+ */
+ hyper getHyper();
+
+ /**
+ get number as float
+ */
+ float getFloat();
+
+ /**
+ get number as double
+ */
+ double getDouble();
+
+ /**
+ get string value
+ */
+ string getString();
+};
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/xml/xpath/makefile.mk b/offapi/com/sun/star/xml/xpath/makefile.mk
new file mode 100644
index 000000000000..60b70c9d70d3
--- /dev/null
+++ b/offapi/com/sun/star/xml/xpath/makefile.mk
@@ -0,0 +1,60 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..$/..$/..$/..
+
+PRJNAME=offapi
+
+TARGET=cssxpath
+PACKAGE=com$/sun$/star$/xml$/xpath
+
+# --- Settings -----------------------------------------------------
+.INCLUDE : $(PRJ)$/util$/makefile.pmk
+
+# ------------------------------------------------------------------------
+
+IDLFILES=\
+ XPathException.idl \
+ XPathObjectType.idl \
+ XXPathObject.idl \
+ XXPathAPI.idl \
+ XXPathExtension.idl \
+ Libxml2ExtensionHandle.idl \
+ XPathExtension.idl \
+ XPathAPI.idl \
+ Libxml2ExtensionHandle.idl
+
+# ------------------------------------------------------------------
+
+.INCLUDE : target.mk
+.INCLUDE : $(PRJ)$/util$/target.pmk
+
+
+
+
+
+