##SCHEMAURI## Macro

Topic Last Modified: 2006-06-12

This topic applies to Exchange 2000 Server SP1 or later.

If you are using Microsoft® Exchange 2000 Server without Service Pack 1 (SP1), the global schema is stored off of the root for the top-level hierarchy in the /non_ipm_subtree/schema folder (for example https://server/public/non_ipm_subtree/schema). Because this fixed location could prevent tools, applications, and future products from discovering and accessing a correct version of schema, Exchange 2000 Server SP1 and later provide improved access to this information. If you are currently building applications that require the creation of global schema in the \non_ipm_subtree\schema folder, you should be aware that the default schema location changed with Exchange 2000 Server SP1 and that you may need to re-create some of your global schema in the new location.

Global Schema in Exchange 2000 Server SP1

Exchange 2000 Server SP1 and later, and also Microsoft SharePoint™ Portal Server 2001 provide an updated release of the Exchange store with a new way to access the global schema. In the updated release, a Uniform Resource Identifier (URI) ending with the macro "##SCHEMAURI##" will resolve to a version of the schema that corresponds to the release of Exchange Server 2007 that you are running. The schema will be located in the non_ipm_subtree folder of an application's top-level hierarchy.

Note

This new URI will not be supported in the mailbox store on Exchange 2007.

If you are building an application on Exchange 2000 Server SP1 or later, it is recommended that you use this new macro to locate the schema rather than using the non_ipm_subtree/schema folder. If you are using SharePoint Portal Server, the non_ipm_subtree folder will be inaccessible and the ##SCHEMAURI## macro should always be used. Versions of the Exchange store released with Exchange 2000 Server Service Pack 1 (SP1) and later provide a location to add non-Microsoft global schema and folders (http://server/<vroot>/##SCHEMAURI##/). You can add schema definitions or subfolders containing global schema in this folder.

The following are some examples of using ##SCHEMAURI##:

  • http://server/public/##SCHEMAURI## is the location of the root for base schema that was introduced in Exchange 2007 (pre-SP1). This path is equivalent to the old path https://server/public/non_ipm_subtree
  • http://server/public/##SCHEMAURI##/microsoft/ExchangeV1 is the location of the schema folder that corresponds to the Exchange 2000 Server (pre-SP1) version of the schema. It is equivalent to https://server/public/non_ipm_subtree/schema.
  • http://server/sharepoint portal server/##SCHEMAURI/microsoft/TahoeV1 is the location of the schema folder that corresponds to the SharePoint Portal Server version of the schema.