Configuration management in NIEM 6: CMF and XSD #67
Replies: 2 comments 2 replies
-
I've been thinking of something similar to deal with subsets. We are replacing the old SSGT wantlists with CMF files. I'd like to make it so that tools do not need to capture the full set of information for namespaces and components that we already track in the database. If a subset tool can fill in the minimal set of info needed, it can be run through the API to fill in the details and get the full CMF file for any version of a model stored in the database. CMF minimal set
QNames Also, instead of using |
Beta Was this translation helpful? Give feedback.
-
I'd definitely like to avoid subset tools having to explicitly document 10,000 vehicle make codes in CMF if a user wants the full code set. We can fill in that kind of information for them, plus dependencies, definitions, etc.. The other fields needed for a minimal CMF for subsets are probably out of scope for this topic, but being able to refer to existing properties and types that are defined elsewhere without having to redefine them should be useful for both CMF files for single namespaces and for subsets. I do like the idea of a |
Beta Was this translation helpful? Give feedback.
-
Configuration management in NIEM 6: CMF and XSD files
The main target of configuration management in NIEM version 1 through 5 is the XML schema document. A NIEM domain publishes its model as one or more reference schema documents, each providing declarations and definitions of the components in its target namespace. The NBAC does the same for the NIEM core model. A message designer likewise publishes extension schema documents as part of his message specification. These schema documents are the authoritative source for their corresponding namespaces.
(It bothers me a little that there is nothing in the schema document to say it is the authoritative source. Conformance target assertions are not quite the same thing. Oh well, if it matters people can write something in the schema
xs:documentation
, I guess.)CMF and XSD are interchangeable In NIEM 6, and so we need a CMF equivalent to the authoritative XSD document. You won't get that by dropping, say, domains/cyber.xsd into the current CMFTool. That tool today produces complete model CMF file. What we need is a namespace CMF file — one that defines components in just one namespace, and merely references the components in all the others. And that means a namespace CMF file can't use REFs for components in the other namespaces. So instead of the
ref
in line 7 below:The authoritative CMF file for the cyber domain (cyber.cmf) must have the
uri
in line 8 below:The cyber.cmf file won't contain objects for any of the components in other namespaces. It will just point to them with
uri
attributes.All this requires some new capabilities in CMFTool:
Beta Was this translation helpful? Give feedback.
All reactions