Farrukh Najmi wrote:
> Today a client may query the registry for a static document based upon
> a specified sleection criterea within the query.
Option 1: How we implemented this is to make an XML serialization of a
set of "contexts". The query is the equivalent of the english:
"Please tell me what an XML schema should look like for a purchase order
if I am using it within these contexts.
<?xml version="1.0" encoding="UTF-8"?>
<ContextRules ID="variableGoesHere">
<BusinessProcessContext businessProcessName="Procurement" />
<ProductClassificationContext classificationScheme="UNSPSC"
value="3324" />
<IndustryClassificationContext classificationScheme="NAICS"
value="2234" />
<GeoPoliticalContext Global="false" classificationScheme="ISO"
value="CA" />
<OfficialConstraintsContext constraintName="trade embargo"
officialConstraintAuthority="UN" constraintValue="UN1441" />
<BusinessProcessRoleContext businessProcessIdentifier="variableBPN"
roleAssumed="variableRoleName" />
<SupportingRoleContext supportingRoleIdentifier="var"
supportingRoleContraintValue="var" />
<SystemsCapabilititesContext dataFormatSupported="var" value="variable" />
</ContextRules>
The ID at the beginning would be a good way to group a set of context
values together.
If these could be nmapped to a set of classification nodes, by the time
you get to the last classification, there shoud;l sit your final schema
(contextually specific to constrain BIE's).
OPTION 2: The other option is for this to be done outside the registry.
The special query would be made into a set of smaller queries, each for
one specific data element. Each data element query would then be
located within the registry, then given back to the "Assembly
Application" to complete final assembly into a schema.
I favour #2 more.
> Imagine that in future a query can specify a document containing
> assembly instructions. The registry in response assembles the
> "virtual" document on the fly based upon the constituent "parts"
> specified in the assembly instructions. The "virtual" document is
> returned to the client as if it were a static physical document.
The document above may be broken down into individual queries. Keeping
it all atomic probably will increase the likelyhood of re-use. The flip
side is to make a document for all the contexts, a registry would have
to have over 10,000,000 static documents to account for all the
combinations. That is based on only one classification scheme for each
context.
Still - I am very interested in discussing this further. The other way
has merits too.
Cheers
Duane
--
***************************************************
Yellow Dragon Software - http://www.yellowdragonsoft.com
Web Services & ebXML Messaging / Registry Downloads
Project Team Lead - UN/CEFACT eBusiness Architecture
Phone: +1 (604) 738-1051 - Canada: Pacific Standard Time
Direct: +1 (604) 726-3329