Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.hp.hpl.jena.util
Class ResourceUtils

    java.lang.Object
      com.hp.hpl.jena.util.ResourceUtils

    public class ResourceUtils

extends java.lang.Object

General utility methods that operate on RDF resources, but which are not specific to a given model.

Version:
  CVS $Id: ResourceUtils.java,v 1.16 2008/01/02 12:07:44 andy_seaborne Exp $
Author:
  Ian Dickinson, HP Labs (email)

Constructor Summary
`ResourceUtils()`

Method Summary
`static java.util.List` | `maximalLowerElements(java.util.Collection resources, Property rel, boolean inverse)` Answer the maximal lower elements of the given collection, given the partial ordering `rel`.
`static java.util.List` | `maximalLowerElements(java.util.Iterator resources, Property rel, boolean inverse)` Given a collection of resources, and a relation defining a partial order over those resources, answer the sub-collection that contains only those elements that appear in the maximal generator of the relation.
`static java.util.List` | `partition(java.util.List l, Property p)` Answer a list of lists, which is a partition of the given input list of resources.
`static Model` | `reachableClosure(Resource root)` Answer a model that contains all of the resources reachable from a given resource by any property, transitively.
`static java.util.List` | `removeEquiv(java.util.List l, Property p, Resource ref)` Remove from the given list l of `Resources`, any Resource that is equivalent to the reference resource `ref` under the relation `p`.
`static Resource` | `renameResource(Resource old, java.lang.String uri)` Answer a new resource that occupies the same position in the graph as the current resource `old`, but that has the given URI.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ResourceUtils

    public ResourceUtils()

Method Detail

### maximalLowerElements

    public static java.util.List maximalLowerElements(java.util.Collection resources,
                                                      Property rel,
                                                      boolean inverse)

  Answer the maximal lower elements of the given collection, given the partial ordering `rel`. See `maximalLowerElements( Iterator, Property, boolean )` for details.

  Parameters:
    `resources` - A collection of resources
    `rel` - A property defining a partial-ordering on `resources`
    `inverse` - If true, we invert the given property (by reversing the order of the arguments), which allows us to use eg subClassOf as a partial order operator for both sub-class and super-class relationships
  Returns:
    The collection that contains only those `resources` are not greater than another resource under the partial order.

### maximalLowerElements

    public static java.util.List maximalLowerElements(java.util.Iterator resources,
                                                      Property rel,
                                                      boolean inverse)

  Given a collection of resources, and a relation defining a partial order over those resources, answer the sub-collection that contains only those elements that appear in the maximal generator of the relation. Specifically, a resource `x` is excluded from the return value if there is another resource `y` in the input collection such that `y Rel x` holds.

  Parameters:
    `resources` - An iterator over a collection of resources
    `rel` - A property defining a partial-ordering on `resources`
    `inverse` - If true, we invert the given property (by reversing the order of the arguments), which allows us to use eg subClassOf as a partial order operator for both sub-class and super-class relationships
  Returns:
    The list that contains only those `resources` are not greater than another resource under the partial order.

### removeEquiv

    public static java.util.List removeEquiv(java.util.List l,
                                             Property p,
                                             Resource ref)

  Remove from the given list l of `Resources`, any Resource that is equivalent to the reference resource `ref` under the relation `p`. Typically, `p` will be `owl:subClassOf` or `owl:subPropertyOf` or some similar predicate. A resource R is defined to be equivalent to `ref` iff `R p ref` is true and `ref p R` is true.

  The equivalent resources are removed from list `l` in place, the return value is the list of removed resources.

  Parameters:
    `l` - A list of resources from which the resources equivalent to ref will be removed
    `p` - An equivalence predicate
    `ref` - A reference resource
  Returns:
    A list of the resources removed from the parameter list l

### partition

    public static java.util.List partition(java.util.List l,
                                           Property p)

  Answer a list of lists, which is a partition of the given input list of resources. The equivalence relation is the predicate p. So, two resources `a` and `b` will be in the same partition iff `(a p b) && (b p a)`.

  Parameters:
    `l` - A list of resources
    `p` - An equivalence predicate
  Returns:
    A list of lists which are the partitions of `l` under `p`

### renameResource

    public static Resource renameResource(Resource old,
                                          java.lang.String uri)

  Answer a new resource that occupies the same position in the graph as the current resource `old`, but that has the given URI. In the process, the existing statements referring to `old` are removed. Since Jena does not allow the identity of a resource to change, this is the closest approximation to a rename operation that works.

  Notes: This method does minimal checking, so renaming a resource to its own URI is unpredictable. Furthermore, it is a general and simple approach, and in given applications it may be possible to do this operation more efficiently. Finally, if `res` is a property, existing statements that use the property will not be renamed, nor will occurrences of `res` in other models.

  Parameters:
    `old` - An existing resource in a given model
    `uri` - A new URI for resource old, or null to rename old to a bNode
  Returns:
    A new resource that occupies the same position in the graph as old, but which has the new given URI.

### reachableClosure

    public static Model reachableClosure(Resource root)

  Answer a model that contains all of the resources reachable from a given resource by any property, transitively. The returned graph is the sub-graph of the parent graph of root, whose root node is the given root. Cycles are permitted in the sub-graph.

  Parameters:
    `root` - The root node of the sub-graph to extract
  Returns:
    A model containing all reachable RDFNodes from root by any property.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Hewlett-Packard Development Company, LP