Navigating network resources based on metadata
First Claim
1. A method of locating a resource that is stored in a location in a network that is identified by a location identifier, comprising the steps of:
- storing, in a metadata registry in a first storage device, metadata that describes the resource in association with the location identifier of the resource;
receiving a request to locate the resource, the request containing an element of the metadata;
retrieving the location identifier associated with the resource from the metadata registry based on the element;
retrieving the resource over the network using the location identifier;
storing a natural language name for the resource in the metadata;
receiving a request to locate the resource based on the natural language name;
retrieving the location identifier associated with the natural language name from the metadata registry using the natural language name;
storing the natural language name in association with the location identifier in a name file in a second storage device associated with the resource;
retrieving the name file;
parsing the name file;
building an index entry based on the values parsed from the name file and storing the index entry in an index of the metadata registry by;
establishing, in a memory, a first index, a second index, a first queue associated with the first index, and a second queue associated with the second index;
receiving a request to build an index entry based on the values parsed from the name file;
selecting the first queue and storing the request in the first queue;
when the first queue is sufficiently full, storing the contents of the first queue in the first index, and concurrently selecting the second queue and storing a subsequent request to build an index entry in the second queue.
9 Assignments
0 Petitions
Accused Products
Abstract
Mechanisms for associating metadata with network resources, and for locating the network resources in a language-independent manner, are disclosed. Owners of network resources define metadata that describes each network resource. The metadata may include a natural language name of the network resource, its location, its language, its region or intended audience, and other descriptive information. The owners register the metadata in a registry. A copy of the metadata is stored on a server associated with a group of the network resources. A copy of the metadata is stored in a registry that is indexed at a central location. A crawler service periodically updates the registry by polling the information on each server associated with registered metadata. To locate a selected network resource, a client provides the name of the network resource to a resolver process. The resolver process provides to the client the network resource location corresponding to the network resource name. Multiple metadata mappings can be established for the same network resource, in which each mapping stores a name expressed in a different natural language. Accordingly, network resources can be located merely by providing the name of the network resource in any natural language that is convenient for the client.
-
Citations
3 Claims
-
1. A method of locating a resource that is stored in a location in a network that is identified by a location identifier, comprising the steps of:
-
storing, in a metadata registry in a first storage device, metadata that describes the resource in association with the location identifier of the resource; receiving a request to locate the resource, the request containing an element of the metadata; retrieving the location identifier associated with the resource from the metadata registry based on the element; retrieving the resource over the network using the location identifier; storing a natural language name for the resource in the metadata; receiving a request to locate the resource based on the natural language name; retrieving the location identifier associated with the natural language name from the metadata registry using the natural language name; storing the natural language name in association with the location identifier in a name file in a second storage device associated with the resource; retrieving the name file; parsing the name file; building an index entry based on the values parsed from the name file and storing the index entry in an index of the metadata registry by; establishing, in a memory, a first index, a second index, a first queue associated with the first index, and a second queue associated with the second index; receiving a request to build an index entry based on the values parsed from the name file; selecting the first queue and storing the request in the first queue; when the first queue is sufficiently full, storing the contents of the first queue in the first index, and concurrently selecting the second queue and storing a subsequent request to build an index entry in the second queue.
-
-
2. A method of locating a resource that is stored in a location in a network that is identified by a location identifier, comprising the steps of:
-
storing, in a metadata registry in a first storage device, metadata that describes the resource in association with the location identifier of the resource; receiving a request to locate the resource, the request containing an element of the metadata; retrieving the location identifier associated with the resource from the metadata registry based on the element; retrieving the resource over the network using the location identifier; storing a natural language name for the resource in the metadata in association with the location identifier in a name file in a second storage device associated with the resource; receiving a request to locate the resource based on the natural language name; retrieving the location identifier associated with the natural language name from the metadata registry using the natural language name; retrieving the name file, parsing the name file;
building an index entry based on the values parsed from the name file; and
storing the index entry in an index of the metadata registry;establishing, in a memory, a first index, a second index, a first queue associated with the first index, and a second queue associated with the second index; receiving a request to build an index entry based on the values parsed from the name file;
selecting the first queue and storing the request in the first queue, and when the first queue is sufficiently full, storing the contents of the first queue in the first index, and concurrently selecting the second queue and storing a subsequent request to build an index entry in the second queue;alternately selecting the first queue and the second queue in response to successive requests to build an index entry.
-
-
3. A method of locating a resource that is stored in a location in a network that is identified by a location identifier, comprising the steps of:
-
storing, in a metadata registry, metadata that describes the resource in association with the location identifier of the resource, by the steps of;
receiving a client identifier of a client associated with the resource;
generating values for the metadata that describe the resource, the location identifier, and the client identifier; and
storing metadata in a persistent storage device associated with the client;receiving a request to locate the resource, the request containing an element of the metadata; retrieving the location identifier associated with the resource from the metadata registry based on the element; retrieving the resource over the network using the location identifier; instructing the client to store the metadata in a particular authorized location in the persistent storage device; building an index entry based on the values parsed from the name file; and
storing the index entry in an index of the metadata registry by establishing, in a memory, a first index, a second index, a first queue associated with the first index, and a second queue associated with the second index by establishing the first queue in a first server and establishing the second queue in a second server that is separate from the first server.
-
Specification