-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Provide namespace support for id numbers #71
Comments
@mjkoster, thanks for driving this forward based on the conversation on call this morning. What are your thoughts for indicating IDs (if available) for "odm", "foo", and "bar" themselves in the "namespace { ... }" declaration? |
The impact of this is registered namespace IDs (and namespace names?) A protocol binding could use 23:467/468 to refer to the temperature Property defined above Would 37:303/1066 and 179:3303/5190 be aliases for the same Property in other namespaces? If we write up SDF in an internet draft, we can use IANA for the namespace registry (?) |
this means that all origins are kept in the oneDM accepted models. for now: OCF will use the OCF namespace and MD5 generated numbers for everything. |
@mjkoster this issue looks good... I like the idea of defining the namespace in a XML schema pattern. Our company is discussing internally using a URN schema, very similar to what you have. Given legal I cannot reproduce our proposal but I can posit a URN for ODM... Please take this as a guide rather than a proposal:
which would lead to the following examples:
NOTE: The NOTE: This URN scheme removes the need for a Thoughts? |
@GordonMcKinney, thanks for chiming in on this. If I understand your proposal, generally, the format is:
where
This would imply that in schema I should be able to either reference This would also further imply that non-decorated tags / identifiers elsewhere are assumed to be context-specific tags / identifiers, for example:
unless fully-qualified, for example:
|
@gerickson yes... more formally here: https://en.wikipedia.org/wiki/Uniform_Resource_Name By defining |
not sure if I agree with this line of thinking anymore. my opinion is that the name space is ONLY for avoiding number clashes on the various submissions of models. |
If I understand correctly, we need ID numbers for the namespaces as well. I think we will need to register the prefix number(s) for each organization If we want to get a urn for odm we can do that also, and we can define our own rules for the construction of identifiers So officially it can be odm:// where orgid is a registered numeric prefix.
So how is this interoperable? |
F2F4: Need a canonical ODM number for things, objects, properties, actions and events. Need a mechanism to map between the ODM canonical number and each ecosystem number. |
F2F4 Proposed Solution: ID qualities shall not be captured in the ODM thing/object/property/action/event definition. Provide a generic mechanism to map between a URI and a number. This mapping can be used to create a mapping between the ODM URI and the ODM number or any other ecosystem number. The mapping file shall be machine readable. |
Does the F2F4 group have a concrete example of this? In a variety of ecosystems, numbers are a shorthand part of a path whereas a URI is usually a complete path. |
That is correct, so the file that captures a URI to number mapping is just that. That URI can be at a thing level, object level, or property/action/event level. Each ecosystem can provides its own number for a URI. If you start with the URI, you can get the number of any ecosystem you would like to use as a shortcut, even ODM. If you start with the number and you know which ecosystem it came from, then you can map to the URI or the number of any other ecosystem. |
{
"idmapping": {
"wdl:/#odmObject/thermostat": 227,
"wdl:/#odmProperty/currentTemperature": 291,
"wdl:/#odmAction/setCoolingSetpoint": 301
}
} |
Per the August 30 teleconference, we should support namespaces for id numbers.
The default namespace will apply to every place the "id" quality is used, and we will add a new quality "alternateId" which contains an array of zero or more id numbers which are prefixed by the identifiers for the defined namespaces. For example:
The text was updated successfully, but these errors were encountered: