See Also

Read more about the TMCore toolkit

Download the NPCL Editor

NPCL Schema Editor for Visual Studio


NPCL Features

  • Specify that a topic can be used as a topic type, occurrence type, association type or association role type (or any combination of these four).
  • Define constraints between types of three different kinds:
    • Topic Occurrence Constriants: Specify that a topic of type T can (or should) have some number of occurrences of type O.
    • Role Player Constraints: Specify that a topic of type T can (or should) play a role of type R (optionally limiting it to being roles of type R in associations of type A)
    • Association Role Constraints: Specify that an assocation of type A can (or should) have some number of association roles of type R.
  • Constraints can have cardinality counts (minimum/maximum) associated with them. This allows you to express things such as "A 'Person' topic must have a single 'Age' occurrence"; "A 'Person' topic can play an 'Employee' role in a 'Works For' association zero or more times"; and "A 'Works For' association must have exactly one 'Employee' role and exactly one 'Employer' role.
  • Both types and constraints can have additional meta-data, this meta-data model is extensible, allowing you to add your own application-specific annotations to your ontology.
  • The NPCL type and constraint information can be represented in topic map form, meaning that you can store your schema in the topic map that has the data and edit it with normal topic map editing tools. However, the information can also be represented in a simple XML form (schema provided!) which makes it alot easier to write. We have provided command-line tools for converting between these forms and for importing the XML version of NPCL into a topic map and for getting the NPCL information in a topic map out in the XML format. The NPCL Editor for Visual Studio works directly on the XML form of NPCL.