Class AssemblerHelp

java.lang.Object
org.apache.jena.assembler.AssemblerHelp

public class AssemblerHelp extends Object
AssemblerHelp provides utility methods used by, and useful for working with, the Assembler code, including the methods that expand a model to include the required inferences and to find the most specific type of a root in an assembler specification.
  • Constructor Details

    • AssemblerHelp

      public AssemblerHelp()
  • Method Details

    • withFullModel

      public static Resource withFullModel(Resource root)
      Answer a Resource .equals() to root, but in the expanded model.
    • fullModel

      public static Model fullModel(Model m)
      Answer the full model of m, with all its imports included and with the necessary properties added from the JA schema. However, if the magic footprint triple (ja:this, rdf:type, ja:Expanded) is present in the model, it is returned unchanged. Imports are managed by the shared ImportManager.instance.
    • fullModel

      public static Model fullModel(ImportManager im, Model m)
      Answer the full model of m, with all its imports included and with the necessary properties added from the JA schema. However, if the magic footprint triple (ja:this, rdf:type, ja:Expanded) is present in the model, it is returned unchanged. Imports are managed by im.
    • loadArbitraryClasses

      public static void loadArbitraryClasses(AssemblerGroup g, Model m)
      Load all the classes which are objects of any (t, ja:loadClass, S) statements in m. The order in which the classes are loaded is not specified, and loading stops immediately if any class cannot be loaded.

      Contrast with loadClasses(AssemblerGroup,Model), which loads classes and assumes that those classes are assemblers to be added to the group.

    • loadAssemblerClasses

      public static void loadAssemblerClasses(AssemblerGroup group, Model m)
      Load all the classes which are objects of any (t, ja:assembler, S) statements in m. group.implementWIth(t,c) is called for each statement, where c is an instance of the class named by S. The order in which the classes are loaded is not specified, and loading stops immediately if any class cannot be loaded.
    • findSpecificType

      public static Resource findSpecificType(Resource root)
      Answer the most specific type of root that is a subclass of ja:Object. If there are no candidate types, answer givenType. If there is more than one type, throw a NoSpecificTypeException.
    • findSpecificType

      public static Resource findSpecificType(Resource root, Resource baseType)
      Answer the most specific type of root that is a subclass of givenType. If there are no candidate types, answer givenType. If there is more than one type, throw a NoSpecificTypeException.
    • findSpecificTypes

      public static Set<Resource> findSpecificTypes(Resource root, Resource baseType)
      Answer all the types of root which are subtypes of baseType and which do not have subtypes which are also types of root.
    • getResource

      public static Resource getResource(Statement s)
      Answer the resource that is the object of the statement s. If the object is not a resource, throw a BadObjectException with that statement.
    • getString

      public static String getString(Statement s)
      Answer the plain string object of the statement s. If the object is not a string literal, throw a BadObjectException with that statement.
    • getString

      public static String getString(Statement s, Literal L)
      Answer the String value of the literal L, which is the object of the Statement s. If the literal is not an XSD String or a plain string without a language code, throw a BadObjectException.
    • findAssemblerRoots

      public static Set<Resource> findAssemblerRoots(Model model)
      Answer a Set of the ja:Object resources in the full expansion of the assembler specification model model.
    • findAssemblerRoots

      public static Set<Resource> findAssemblerRoots(Model model, Resource type)
      Answer a Set of the objects in the full expansion of the assembler specification model which have rdf:type type, which must be a subtype of ja:Object.
    • singleModelRoot

      public static Resource singleModelRoot(Model singleRoot)
      Answer the single resource in singleRoot of type ja:Model. Otherwise throw an exception.
    • singleRoot

      public static Resource singleRoot(Model singleRoot, Resource type)
      Answer the single resource in singleRoot of type type. Otherwise throw an exception.