--- /dev/null
+// LabelServiceInterface.java\r
+// $Id: LabelServiceInterface.java,v 1.1 2010/06/15 12:25:28 smhuang Exp $\r
+// (c) COPYRIGHT MIT and INRIA, 1996.\r
+// Please first read the full copyright statement in file COPYRIGHT.html\r
+\r
+package org.w3c.jigsaw.pics ;\r
+\r
+import java.net.URL;\r
+\r
+public interface LabelServiceInterface {\r
+\r
+ /**\r
+ * Get the specific labels for a given URL.\r
+ * @param url The URL whose label is to be fetched.\r
+ * @return An object conorminig to the LabelInterface, or \r
+ * <strong>null</strong> if none was found.\r
+ */\r
+\r
+ public LabelInterface getSpecificLabel (URL u) ;\r
+\r
+ /**\r
+ * Get the most specific generic label for the given URL.\r
+ * @param url The URL whose label is to be retreived.\r
+ * @return An object conforming to the LabelInterface, or \r
+ * <strong>null</strong> if none was found.\r
+ */\r
+\r
+ public LabelInterface getGenericLabel (URL u) ;\r
+\r
+ /**\r
+ * Get the tree labels for the given URL.\r
+ * @param url The URL whose tree labels are to be retreieved.\r
+ * @return An array of objects conforming to the LabelInterface, or\r
+ * <strong>null</strong> if none was found.\r
+ */\r
+\r
+ public LabelInterface[] getTreeLabels (URL u) ;\r
+\r
+ /**\r
+ * Get the generic tree labels for the given URL.\r
+ * @param url The URL whose labels is to be retreieved.\r
+ * @return An array of object conforming to the LabelInterface, or \r
+ * <strong>null<?strong> if none was found.\r
+ */\r
+\r
+ public LabelInterface[] getGenericTreeLabels (URL u) ;\r
+\r
+ \r
+ /**\r
+ * Dump this service description into the provided buffer.\r
+ * This method is called by the protocol handler, whenever it needs to send\r
+ * back the service description. \r
+ * @param buffer The buffer in whichi to dump the service description.\r
+ * @param format The format in which this service is to be dumped (which\r
+ * can be any of ... FIXME)\r
+ */\r
+\r
+ public void dump (StringBuffer buffer, int format) ;\r
+\r
+}\r