I. Abstract
MUDDI stands for “Model for Underground Data Definition and Integration” and is an approach to make sub-surface data Findable, Accessible, Interoperable, and Re-Usable.
This document defines a Conceptual Model of classes that allows the integration of datasets from different types of information about the underground space, using different information models. These information models include models about elements such as utility infrastructure, transport infrastructure, soils, ground water, or environmental parameters. The Conceptual Model is a superset of classes representing Real-World Objects that can be found in the Underground.
MUDDI is meant to be comprehensive and provides sufficient level of detail to address application use cases, including but not limited to the following:
Routine street excavations;
Emergency response;
Utility maintenance programs;
Large scale construction projects;
Disaster planning;
Disaster response; and
Smart Cities programs.
The MUDDI Conceptual Model was designed as a common basis to create Logical Models that make different types of sub-surface data interoperable in support of a variety of use cases and in different jurisdictions and user communities. The MUDDI Conceptual Model standardization targets are specific MUDDI Logical Models and, subsequently, one or more encodings of each MUDDI Logical Model. This could be GML (Geographic Markup Language), SFS (Simple Features SQL) or JSON encodings.
The MUDDI Conceptual Model predefines relevant, globally-applicable underground objects and provides the implementation community with the flexibility to tailor the Logical Model to specific requirements in a local, regional, or national context.
This OGC Standard provides a comprehensive set of concepts that represent relevant features in the sub-surface. These concepts and their underlying requirements have been collated and integrated based on Best Practices defined by the MUDDI Standards Working Group members.
The MUDDI Conceptual Model consists of a core of mandatory classes describing built infrastructure networks (such as utility networks) together with a number of optional feature classes, properties, and relationships related to the natural and built underground environment.
This OGC Standard defines a comprehensive underground data model. The OGC encourages the creation of Logical Models and encodings based on these concepts. The creation of Logical Models targeted to defined use cases and a user community also allows the extension of the concepts provided in this document.
II. Keywords
The following are keywords to be used by search engines and document catalogues.
ogcdoc, MUDDI, underground data
III. Preface
This OGC Standard provides the MUDDI Conceptual Model as described in UML.
IV. Security considerations
Security considerations for implementations of a Logical Model based on MUDDI are in the domain of the implementing platform, application, operating system, hosting, and network environment of such an implementation. Particular considerations to protection of underground infrastructure data from use for malicious purposes is advised.
V. Submitters
All questions regarding this document should be directed to the editor or the contributors:
Name | Organization | Role |
---|---|---|
Alan Leidner | New York City Geospatial Information System and Mapping Organization (GISMO) | Editor |
Andrew Hughes | British Geological Survey (BGS), United Kingdom Research and Innovation (UKRI) | Editor |
Carsten Roensdorf | Ordnance Survey | Editor |
Neil Brammall | Geospatial Commission | Editor |
Liesbeth Rombouts | Digitaal Vlaanderen | Editor |
Joshua Lieberman | Editor | |
Dean Hintz | Safe Software | Contributor |
Allan Jamieson | Ordnance Survey | Contributor |
Chris Popplestone | Ordnance Survey | Contributor |
1. Scope
The MUDDI (Model for Underground Data Definition and Integration) Conceptual Model (CM) defines a set of classes that represent sub-surface and related surface Real-World objects and their location. This explicitly includes those objects that may touch or interface with the surface. It does so by representing useful objects as high-level classes in the CM. These classes are high-level as they are designed to allow application specific detail to be added in a separate step (to create more specific Logical Models).
MUDDI is intended to form the basis for conformant and interchangeable logical and, subsequently, physical implementations, such as GML (Geographic Markup Language), JSON, or SFS (Simple Features SQL). Hence, the MUDDI CM serves as a framework to make datasets that utilize different information for underground objects interoperable, exchangeable, and more easily manageable. It does so by providing the key concepts necessary to represent underground data in the built and natural environment.
In accordance with ISO19107:2019 and OGC’s Standard for Modular specifications (OGC_08-131) Portrayal and Symbology are not explicitly covered and should be implemented separately from the Data Model. However, there is a provision to point to the desired or prescribed symbology in the CM.
2. Conformance
2.1. General
This Standard defines a Conceptual Model (Clause 10.1) which is independent of any encoding or formatting techniques.
The Standardization Targets for this Standard are Logical Models that implement MUDDI in a specific context.
The MUDDI Conceptual Model (CM) defines a number of feature classes, their properties, and relationships. The MUDDI CM is intended to be a useful starting point for the development of a more specific, but still platform-independent, Logical Model and its Encodings. The MUDDI CM has formal conformance targets as well as a number of mechanisms to tailor the model to detailed requirements as specified below.
2.2. Conceptual Models
A Conceptual Model standardization target is a version of the MUDDI CM tailored for a specific user community.
‘Tailoring’ can be done through any combination of the following mechanisms:
Omission of one or more of the optional UML packages,
Reduction of the multiplicity for an attribute or association,
Restriction on the valid values for an attribute,
Renaming of any concept term (including Feature class names and their attributes),
Add additional feature classes that don’t conflict with the definitions in the MUDDI Core and Extended Models, and
Replacement of abstract value types with concrete value types (including geometry representations)-this is a mandatory step in the creation of the logcial model.
The MUDDI CM explicitly allows renaming of concept terms in order to enable the re-use of one or more vocabularies that have been adopted by the relevant user community. Renaming of terms also supports implementations of the MUDDI CM in languages other than English.
Any changes of terms shall be recorded in a mapping table that is part of the data model (class ‘LogicalName’). The table maps the relationship between any altered concept term in the Logical Model and the concept terms specified in the MUDDI UML model.
2.3. Logical Models
Logical Models define how a Conceptual Model should be implemented in a specific context. This context specialization can be geographic, for a dedicated user community, specific to defined use-cases or specific to some other application of underground data.
Each Feature Class in the MUDDI CM has a provision for the geometric representation of the Feature Class. However, the CM does not suggest the use of a specific geometry type for any feature. MUDDI requires the specialization of the abstract value type in the geometry property of each Feature Class (specified in ‘MUDDIObject’) into one or more implementable ISO19107 geometries when a Logical Model is being derived from the CM. Assignment of a Simple Features geometry type as specified in ISO 19125-1 is recommended as a minimum.
Conformant Logical Models provide evidence that they are an accurate representation of the Conceptual Model. This evidence should include implementations of the abstract tests specified in Annex A of this document.
Since this Standard is agnostic to the implementing technologies, the specific techniques to be used for conformance testing cannot be specified. Logical Models need to provide evidence of conformance which is appropriate for the implementing technologies. This evidence should be provided as an annex to any specification of a Logical Model.
2.4. Conformance Classes
This Standard identifies two (2) conformance classes. Each conformance class is defined by one requirements class. The tests in Annex A are organized by Requirements Class. Therefore, an implementation of the Core conformance class must pass all tests specified in Annex A for the Core requirements class.
The core conformance class relates to a small set of feature classes that comprise a minimum underground data model. This is referred to as the ‘Core’ model.
The second conformance class contains additional feature class that are optional. It is referred to as the ‘Extended’ model.
Only the Core conformance class is mandatory. All other conformance classes are optional. In the case where a conformance class has a dependency on another conformance class, that conformance class should also be implemented.
The practical implication of this is that the feature classes in the Core part of the model are required to be implemented in any Logical Model. These broadly include objects that represent underground utility networks. All other feature classes specified in the Extended Model are in a separate conformance class. The implementation of any of these classes will depend on the scope and use-cases of the Logical Model and are optional.
The MUDDI Conceptual Model is defined by the MUDDI UML model. This Standard is a representation of that UML model in document form. In the case of a discrepancy between the UML model and this document, the UML model takes precedence.
3. Normative references
The following documents are referred to in the text in such a way that some or all of their content constitutes requirements of this document. For dated references, only the edition cited applies. For undated references, the latest edition of the referenced document (including any amendments) applies.
John R. Herring: OGC 17-087r13, Topic 1 — Spatial schema. Open Geospatial Consortium (2020). http://www.opengis.net/doc/AS/FG/P1/FM/1.0.
Cliff Kottman and Carl Reed: OGC 08-126, Topic 5 — Features. Open Geospatial Consortium (2009).
Cliff Kottman: OGC 99-110, Topic 10 — Feature Collections. Open Geospatial Consortium (1999).
Open Geospatial Consortium: OGC 18-067r3, OGC Symbology Conceptual Model: Core Part. Open Geospatial Consortium (2020). http://www.opengis.net/doc/IS/SymCore/1.0.0.
Policy SWG: OGC 08-131r3, The Specification Model — Standard for Modular specifications. Open Geospatial Consortium (2009).
ISO: ISO 19101-1, Geographic information — Reference model — Part 1: Fundamentals. International Organization for Standardization, Geneva https://www.iso.org/standard/59164.html.
ISO: ISO 19101-2, Geographic information — Reference model — Part 2: Imagery. International Organization for Standardization, Geneva https://www.iso.org/standard/69325.html.
ISO: ISO 19103, Geographic information — Conceptual schema language. International Organization for Standardization, Geneva https://www.iso.org/standard/56734.html.
ISO: ISO 19105, Geographic information — Conformance and testing. International Organization for Standardization, Geneva https://www.iso.org/standard/76457.html.
ISO: ISO 19107, Geographic information — Spatial schema. International Organization for Standardization, Geneva https://www.iso.org/standard/66175.html.
ISO: ISO 19108, Geographic information — Temporal schema. International Organization for Standardization, Geneva https://www.iso.org/standard/26013.html.
ISO: ISO 19109, Geographic information — Rules for application schema. International Organization for Standardization, Geneva https://www.iso.org/standard/59193.html.
Roger Lott: OGC 18-005r4, Topic 2 — Referencing by coordinates. Open Geospatial Consortium (2019). http://www.opengis.net/doc/AS/topic-2/5.0.
ISO: ISO 19111, Geographic information — Referencing by coordinates. International Organization for Standardization, Geneva https://www.iso.org/standard/74039.html.
ISO: ISO 19117, Geographic information — Portrayal. International Organization for Standardization, Geneva https://www.iso.org/standard/46226.html.
John Herring: OGC 06-103r4, OpenGIS Implementation Specification for Geographic information — Simple feature access — Part 1: Common architecture. Open Geospatial Consortium (2011). http://www.opengis.net/doc/is/sfa/1.2.1.
ISO: ISO 19125-1, Geographic information — Simple feature access — Part 1: Common architecture. International Organization for Standardization, Geneva https://www.iso.org/standard/40114.html.
ISO: ISO 19156, Geographic information — Observations, measurements and samples. International Organization for Standardization, Geneva https://www.iso.org/standard/82463.html.
OMG UML 2.5.1, Unified Modeling Language. (2017). https://www.omg.org/spec/UML/2.5.1/About-UML.
OMG XMI 2.0, XML Metadata Interchange. (2003). https://www.omg.org/spec/XMI/2.0/About-XMI.
4. Terms, definitions and abbreviated terms
This document uses the terms defined in OGC Policy Directive 49, which is based on the ISO/IEC Directives, Part 2, Rules for the structure and drafting of International Standards. In particular, the word “shall” (not “must”) is the verb form used to indicate a requirement to be strictly followed to conform to this document and OGC documents do not use the equivalent phrases in the ISO/IEC Directives, Part 2.
This document also uses terms defined in the OGC Standard for Modular specifications (OGC 08-131r3), also known as the ‘ModSpec’. The definitions of terms such as standard, specification, requirement, and conformance test are provided in the ModSpec.
For the purposes of this document, the following additional terms and definitions apply.
4.1. Terms and definitions
4.1.1. underground infrastructure
UGI ALTERNATIVE
infrastructure located at or beneath the surface of the earth or ground level
4.1.2. underground infrastructure information
UGII ALTERNATIVE
information about underground infrastructure
4.1.3. conceptual model
CM ALTERNATIVE
model that defines concepts of a universe of discourse
[SOURCE: ISO 19101-1, Clause 4.1.5]
4.1.4. conceptual schema
formal description of a conceptual model (Clause 4.1.3)
[SOURCE: ISO 19101-1, Clause 4.1.6]
4.1.5. model-driven standard
MDS ALTERNATIVE
standard created using a model-driven architecture
[SOURCE: OGC 21-035r1, Clause 2.1.4]
4.1.6. conformance test case
test for a particular requirement or a set of related requirements
Note 1 to entry: When no ambiguity, the word “case” may be omitted. i.e., conformance test (Clause 4.1.9) is the same as conformance test case (Clause 4.1.6).
[SOURCE: OGC 08-131r3]
4.1.7. conformance test module
set of related tests, all within a single conformance test class (Clause 4.1.8)
[SOURCE: OGC 08-131r3]
4.1.8. conformance test class
conformance test level ALTERNATIVE
set of conformance test modules (Clause 4.1.7) that must be applied to receive a single certificate of conformance
[SOURCE: OGC 08-131r3]
4.1.9. conformance test
test, abstract or real, of one or more requirements (Clause 4.1.11) contained within a standard, or set of standards
[SOURCE: OGC 08-131r3]
4.1.10. recommendation
expression in the content of a document conveying that among several possibilities one is recommended as particularly suitable, without mentioning or excluding others, or that a certain course of action is preferred but not necessarily required, or that (in the negative form) a certain possibility or course of action is deprecated but not prohibited
4.1.11. requirement
expression in the content of a document conveying criteria to be fulfilled if compliance with the document is to be claimed and from which no deviation is permitted
[SOURCE: OGC 08-131r3]
4.1.12. requirements class
aggregate of all requirement modules (Clause 4.1.13) that must all be satisfied to satisfy a conformance test class (Clause 4.1.8)
[SOURCE: OGC 08-131r3]
4.1.13. requirements module
aggregate of requirements (Clause 4.1.11) and recommendations (Clause 4.1.10) of a specification against a single standardization target type (Clause 4.1.17)
[SOURCE: OGC 08-131r3]
4.1.14. specification
document containing recommendations (Clause 4.1.10), requirements (Clause 4.1.11) and conformance tests (Clause 4.1.9) for those requirements (Clause 4.1.11)
4.1.15. standard
specification (Clause 4.1.14) that has been approved by a legitimate Standards Body
4.1.16. standardization target
entity to which some requirements (Clause 4.1.11) of a standard (Clause 4.1.15) apply
[SOURCE: OGC 08-131r3]
4.1.17. standardization target type
type of entity or set of entities to which the requirements (Clause 4.1.11) of a standard (Clause 4.1.15) apply
[SOURCE: OGC 08-131r3]
4.1.18. statement
expression in a document conveying information
[SOURCE: OGC 08-131r3]
4.2. Abbreviated terms
CM::Conceptual Model MDA:: Model-Driven Architecture MDS:: Model-Driven Standard OCL:: Object Constraint Language PIM:: Platform Independent Model PSM:: Platform Specific Model UML:: Unified Modeling Language
5. Conventions
5.1. General
This section provides details and examples for any conventions used in the document. Examples of conventions are symbols, abbreviations, use of XML schema, or special notes regarding how to read the document.
5.2. Identifiers
The normative provisions in this standard are denoted by the URI namespace:
http://www.opengis.net/spec/muddi/1.0/cm
All requirements that appear in this document are denoted by partial URIs which are relative to the namespace shown above.
For the sake of brevity, the use of “req” in a requirement URI denotes:
http://www.opengis.net/spec/muddi/1.0/cm/req
An example might be:
req/core/classes-concepts
All conformance tests that appear in this document are denoted by partial URIs which are relative to the namespace shown above.
For the sake of brevity, the use of “conf” in a requirement URI denotes:
http://www.opengis.net/spec/muddi/1.0/cm/conf
6. Background
6.1. Motivation and Application Areas
As mentioned in the preface, MUDDI is intended to be inclusive, open to incorporating most aspects of underground mapping from geology to utilities, from environmental to facilities management. Certainly, a key focus application domain and indeed one of the main motivations for creating MUDDI is utilities and the protection of utilities infrastructure. Yet, the MUDDI model can be equally as useful to a variety of other application areas such as management of civil infrastructure, including transportation or flood control, or more broadly for environmental and disaster management and mitigation. Indeed, it has become increasingly clear that management of complex systems such as utilities needs to done in an integrated way that recognizes the inter-related nature of systems with each other and with the changing environments within which they are situated. In this way, an inclusive open standard such MUDDI can support data integration within the subsurface domain, and in turn help facilitate this type of integrated management. While MUDDI can be used to support a wide range of application domains, to better understand the evolution of MUDDI it is perhaps best to examine the application of MUDDI to the utilities sector in more detail.
6.2. Utilities and the Built Environment
The economic life of communities around the world depends to a significant extent upon the quality and efficiency of the built environment. This includes the structures where people live and work and the infrastructure that connects every structure – and serves all who use those structures — with essential resources such as water, energy, and communications services. If buildings and their occupants can be compared to the cells in a human body then infrastructure networks are like the human circulatory and nervous systems without which modern life would not be possible. Further, infrastructure is not static: technological change and economic dynamics require that the infrastructure services be in a constant state of repair, renewal and re-invention to keep up with society’s needs, technological advancement, and competitive necessities.
6.3. Utilities Go Underground
In developed countries, most jurisdictions have made the decision, sometimes hundreds of years ago, that some or all of the infrastructure serving the populace should be placed underground, running along the street network and branching off to connect with buildings and other structures and street elements. The reasons for this decision are obvious: water and sewer networks cannot be efficiently engineered at the street level and other types of utilities are protected by being buried in the earth, where they do not clutter the streets and sidewalk which are needed to support safe public mobility. For example: the decision by New York City to put utility lines underground was made after the blizzard of 1888 when heavy snows caused the widespread collapse of utility poles and lines, resulting in widespread outages, and a major threat to public safety especially from severed electric wires.
6.4. Invisible Infrastructure
Yet once infrastructure was placed underground, utilities were and continue to be forced to address another set of problems arising from the fact that pipes, conduits, and connections can not be seen at street level nor physically reached when work on them needs to be done. The exception is for small segments of the network that could be accessed via manholes and vaults, and street accessible valve shafts.
The following cases often necessitate an excavation below street level:
New service connections need to be made,
Utility lines break and need to be repaired or replaced,
New kinds of services need to be provided, and
Higher capacity services need to be installed to deal with increased demand.
Scenarios in which six, seven, or more different kinds of utility pipe and conduit can be found that lie close to or on top of one another are not uncommon.
Workers are obliged to proceed with great caution because they can not see what might be hit, damaged or severed by their next blind shovel thrust. One miscalculation could lead to a flood from a punctured water line, a gas line explosion, or even a lethal shock from a severed electricity conduit. Even so, accidental utility “strikes” were, and continue to be, a regular feature of utility work, delaying projects, wasting money, and inconveniencing the public.
6.5. Utility Data Sharing Procedures Solve Only Part of the Problem
Due to the persistent hazards of uninformed excavations into streets tightly packed with infrastructure, ultimately almost all jurisdictions with underground utilities adopted “One Call” or “Safe Dig” procedures. These procedures require all utilities with infrastructure elements near the site of a planned excavation to either share their records or mark their locations on the street. However, such excavation coordination efforts are only as good as their records which need to be easily accessible, complete, accurate and understandable. In an ideal world, all underground information would meet the FAIR principles for data being Findable, Accessible, Interoperable, and Re-Usable.
All too often data flaws and incompatibility lead to misinterpretation and mistakes which result in delays and damages. This might only be a minor annoyance if it were not for the fact that utility excavations are quite frequent. Looking at information from older cities like New York, Chicago, and London (and regions like Flanders, Belgium) for every street kilometer or mile or there may be as many as 30 to 40 or more excavations annually. When dealing with the large scale of these transactions, inefficiencies in bringing data together, can be costly, annoying, and even dangerous.
6.6. Utilities and Records Management
Organizations that own and manage underground utilities have generally kept records that depict their networks including geographic location, feature attributes, and logical/functional/engineering characteristics. This information supports utility business and field operations including customer service, utility hookup and repair, utility replacement and modernization, and customer billing and collecting, but is not necessarily shared with interested parties. Because the infrastructures of many utilities were designed and created many decades ago, their records reflect the information technology — or absence of technology — available at the time. Even to this day, many records are still kept on manually drafted drawing sheets and service connection cards. More recently record keeping has progressed to include scanned drawings, CAD electronic designs, and databases to store attribute data. More advanced utilities have combined their old records and CAD drawings to create GIS based seamless utility maps with GIS features linked to attribute data.
For utilities, as with almost every other form of business, the efficiency with which information is handled has a significant influence on how effectively the business is run. For underground utilities, this challenge is complicated by the fact that safe and efficient utility operations require a knowledge of the location of other nearby utilities. Since different utilities have different methods for storing and formatting their data, and have a natural reluctance to share based on security concerns, the bringing together of data, even with excavation coordination programs, has been historically problematic. As computer visualization and analytic capabilities continue to grow, opportunities to take full advantage of new information tools are not always realized due to barriers in sharing compatible data quickly in an integrated way, ready for analysis.
The objective of the MUDDI conceptual data model is to reduce this barrier and to show how underground data can be integrated to deliver value.
7. Use cases
7.1. Excavation / strike avoidance
There are on average between 30 and 40 excavations annually per mile of roadway in many developed areas. Since urban and even suburban underground space is typically crowded with many different utility lines, most jurisdictions require that utilities share their data at the location of a proposed excavation in order to avoid utility strikes, which can cause extensive damage and result in significant costs and delays. In many cases, mark-up crews must locate records for the street in question and bring them out into the field in their vehicles. Information sharing and collaboration consists of “graffiti-style” sketches made on the street with spray paint or chalk. Getting all the utilities to respond routinely takes several days to two or more weeks — if essential records can be located at all. The effectiveness of the street markup process depends upon the often questionable, rarely documented, and even more rarely tested accuracy and completeness of the records being referenced.
With utilities records in standards-based digital formats, information requests can be answered with digital submissions from each utility. If the utility data is in a common format, it can be seamlessly integrated by excavators and used to guide underground work. Modern methods of data exchange, including wireless communications to mobile devices in the field, then make it possible to rapidly assemble utility information directly in the field, potentially lowering the strike risk and also reducing the time to mitigate strike hazards from days or weeks to minutes.
7.2. Environmental
Human development and industrialization over the last few centuries lead to activities that polluted our environment. A significant proportion of these activities have impacted the sub-surface. Further, the sub-surface, particularly in urban areas, is heavily modified and these modifications can affect the pathways by which movement can take place. In other words, movement of various physical properties through the underground (UG) can be tracked from their source on or close to the surface through the sub-surface using a conceptual approach. Further, the data requirements of characterizing and monitoring the sub-surface in both space (3D) and changes with time are important. The time element has two aspects: one is the time taken for any change to propagate or travel through the subsurface and the second is how the source itself may change with time. Changes to the source can be sudden, so-called step change in the state of the source, such as a storm event related to heavy rainfall or gradual, such as sea level rise over many decades.
7.3. Emergency Response / Disaster Management
Large scale disasters do not happen very often. When they do, the failure to anticipate effects on major infrastructure features as well as on other components of the built environment that depend upon that infrastructure, can add billions to costs and result in the displacement, injury, and death of large numbers of people. Disasters that are particularly associated with infrastructure failures include power blackouts, floods, tsunamis, storm surges, earthquakes, tornados, hurricanes and other high wind events, high heat events, fuel explosions, and terrorist attacks. A disaster event, at its most disabling, can lead to the failure of major utility generating, storage, control or transmission facilities, cutting off utility resources to large areas. Power failures caused by storms, floods, or heat events can black out an entire region and cause the shutdown of many critical facilities. A storm surge can flood transit and vehicular tunnels, short circuit electric substations and knock out basement utilities. Interdependencies between infrastructure networks can mean that the failure of one system disables others in a cascading effect. Although not all the damage caused by a disaster event can be anticipated or prevented, any capacity to do so is utterly dependent on the rapid availability of high-quality, interoperable, geospatially-enabled data for analyzing vulnerabilities to disaster consequences.
Interoperable underground utility data that depict large-scale and/or critical transmission, generation, or storage features with their physical and functional interconnections are particularly important. They enable analysis and simulation of the effects of a disaster event, development of protective strategies, and quick reaction to outages and damage. Such data are also important for identifying single points of failure, interdependencies, and triggers for cascading effects. Data about corresponding above-surface features along with underground environment characteristics such as permeability and saturation are also needed to examine the effects of disaster scenarios such as storm surge levels. Major utility features comprise only a small percentage of the overall utility infrastructure, dominated as it is by street-level distribution branches, and concerns for their security often work against data standardization and sharing. Nevertheless, without proper integration and analysis of data for both strategic and street-level infrastructure components, jurisdictions will remain hopelessly vulnerable and reactive to disaster events rather than properly prepared.
8. Model overview
The conceptual data model is split into a core mode and an extended model which are intended to be used as follows.
8.1. Core Conceptual Model
These are the mandatory classes that every MUDDI-compliant logical data model should have. At the heart of MUDDI is a representation of man-made underground utility features. These include individual network assets comprising of features that are involved in the conveyance of a commodity (such as the transportation of electricity or water) and NetworkAccessories that have supporting roles (for example ducts or sensors) as well a the hierarchical grouping of these assets into different types of hierarchical networks (for example an electricity transmission network or a metered sub-network for potable water). Events, such as observations at a point in time and space (for example operational subdivisions for a maintenance team or sites like a water treatment planned) together with the mapping table for terms (LogicalName) are also mandatory.
The feature classes in the Core Conceptual Model can be tailored to specific requirements as described in chapter 2 of this document.
8.2. Extended Conceptual Model
The Extended Conceptual Model contains several specializations of the higher level classes defined in the Core Conceptual Model. All of these are optional but are considered good practice. The network conveyance objects, for example are further divided into nodes and links to allow a network graph representation that can be topologically structured.
Extensions like Structures (infrastructure that is not directly connected to the network but supports the network) and Environmental Units that can represent soil, ground water or chemicals are also included in the extended model
The feature classes in the Extended Conceptual Model can be tailored to specific requirements as described in chapter 2 of this document.
8.3. Design requirements
The development of MUDDI was motivated by several specific design requirements.
Functionality
The model should specifically address three priority application use cases (Excavation, Environmental, Emergency Response / Disaster Management).
Compatibility
The model should derive from or map to/from existing candidate models such as INSPIRE [IUN] (Infrastructure for Spatial Information in the European Community), CityGML UN ADE [CUA] (Utility Networks Application Domain() Extension), GeoSciML [GSML], or IMKL (Informatie Model Kabels en Leidingen).
Modularity
In order to minimize the quantity and detail of data required for specific use cases, the model should have a modular structure with a simple mandatory core and additional elements in the form of optional extensions or interfaces.
Traceability
The model should provide for Underground Infrastructure Information to be linked directly with the survey measurements, sensor observations, and supporting evidence from which it was derived and from which its quality can be determined.
Flexibility
The model should support implementations that include the geometric and topological representations needed for specific applications, such as 2D geometries for excavation planning, 3D geometries for construction design, or functional graph topologies for disaster vulnerability assessments.
FAIR principles
The principles of making data Findable, Accessible, Interoperable, and Re-Usable.
8.4. Design patterns
There are common model design patterns which might satisfy MUDDI requirements, particularly modularity and flexibility.
Relational
The pattern of fixed tables connected by foreign key relations. This is an established implementation pattern, but tends to result in duplication of data to support specialization and can contain brittle relationships between model elements.
Graph
An extremely flexible pattern of data elements connected by diverse relation predicates and tends to represent knowledge webs and physical networks very well. However, this pattern is still hard to implement for spatial data.
Object
Inheritance patterns are particularly well suited to UML modeling, but specialization hierarchies themselves can lack flexibility in terms of being able to choose different configurations of specialized attributes for specific applications.
Interface
A variant of the object model in which specializations can also be supported by the addition of interface elements (consisting of attributes and/or operations) to primary objects. Interfaces can be mixed and matched as well as reused for different primary objects, but the variety of ways in which they can be implemented may present a risk of non-interoperability between implementations.
8.5. Representation of Location and Geometries
All MUDDI feature classes should be geolocated, meaning that their location is represented by a geometry in a defined Coordinate Reference System (CRS) as specified in OGC Simple Feature Access: Part 1. The root ‘MUDDIObject’ feature class has a geometry property that has an abstract value type. This means there is no explicit geometry type specified in the CM and that the concrete geometry type needs to be implemented in the Logical Model.
At least one simple feature geometry is recommended and is assigned to each feature class in a MUDDI Logical Model. Any simple features geometries are permitted, though implementers are encouraged to choose only geometry types that can reasonably expected to be present in data and are required for the use cases the Logical Model is meant to support.
The CM does not exclude the possibility to use more than one geometry property per feature class (Multiple Geometry Representation). Whether this is desirable or not is an implementation decision that will influence the Logical Model and Encodings.
8.6. Management of Identifiers
The MUDDI CM includes an Identifier scheme that distinguishes between the following three main identifiers.
ObjectID: The Object Identifier refers to the Real-World Object. Ideally the ObjectID would be globally unique or unique within the information sharing community, though it may only be unique for one single data provider. ObjectIDs should be persistently managed. One Real World Object can be represented by one or more representations, or records.
RecordID: The Record Identifier refers to data representations of the Real World Object and is unique at least within a defined dataset and persistent.
SystemID: The System Identifier refers to an identifier for data or system management purposes that is typically assigned by the specific implementation technology in an automated fashion. The SystemID is either globally-unique or unique within a given system of a single data provider. A combination of the SystemID together with the identifier for a particular system or data provider should be unique. Ideally, the SystemID would be persistent between subsequent updates of a feature, though in practice this ID may not always be persistent.
While the maintenance and dereference mechanisms for identifiers are implementation dependent and should be specified in more detail for any implementation, the reason to include these Identifiers in the CM is to set an expectation and understanding for different types of IDs.
9. Conceptual model requirements
9.1. General
This clause specifies the requirements for the conceptual model.
9.2. Requirements of the Core conceptual model
The classes of the Core package of the conceptual model are:
MUDDIObject
MUDDIAsset
MUDDIEvent
MUDDISpace
Network
NetworkAsset
NetworkConveyance
NetworkNode
NetworkLink
NetworkAccessory
These classes are described in chapter 10 in a feature catalogue as well as UML class diagrams.
Requirements class 1: Logical implementation of the Core conceptual model | |
---|---|
Identifier | /req/core |
Target type | Logical model |
Conformance class | Conformance class A.1: /conf/core |
Description | A logical model implementation must implement the MUDDI Core conceptual model. |
Normative statements | Requirement 1: /req/core/classes-concepts Requirement 2: /req/core/classes-associations Requirement 3: /req/core/classes-attributes Requirement 4: /req/core/concrete-value-types |
Guidance | The MUDDI core conceptual models are illustrated in Figure 1 . |
Requirement 1: Specification of concepts in the core conceptual models | |
---|---|
Identifier | /req/core/classes-concepts |
Included in | Requirements class 1: /req/core |
Statement | For each UML class defined or referenced in the Core Package, the logical model SHALL contain an element which represents the same concept as that defined for the UML class. |
Requirement 2: Specification of associations in the core conceptual models | |
---|---|
Identifier | /req/core/classes-associations |
Included in | Requirements class 1: /req/core |
Statement | For each UML class defined or referenced in the Core Package, the logical model SHALL represent associations with the same source, target, direction, roles, and maximum multiplicities as those of the UML class. |
Requirement 3: Specification of attributes in the core conceptual models | |
---|---|
Identifier | /req/core/classes-attributes |
Included in | Requirements class 1: /req/core |
Statement | For each UML class defined or referenced in the Core Package, the logical model SHALL represent the attributes of the UML class including the name, definition, type, and maximum multiplicity. |
Requirement 4: Abstract value types in core conceptual models replaced with concrete value types | |
---|---|
Identifier | /req/core/concrete-value-types |
Included in | Requirements class 1: /req/core |
Statement | For each attribute specified with the AbstractValueType value type in a UML class defined or referenced in the Core Package, the logical model SHALL provide a concrete value type for that attribute that replaces the AbstractValueType value type. Note: This is particularly important for the geometry property where a concrete ISO_19107 geometry type needs to be assigned. |
9.3. Requirements for the extended conceptual models
The logical model may decide on which UML classes in the extended conceptual models to implement on an as needed basis.
In the Extended requirements class, there are no mandatory UML classes.
Therefore by default, if the minimum obligation in a relationship to a UML class is zero, then that UML class does not have to be implemented.
Requirements class 2: Logical implementation of extended conceptual models | |
---|---|
Identifier | /req/extended |
Target type | Logical model |
Conformance class | Conformance class A.2: /conf/extended |
Description | An implementation of a MUDDI Logical Model may implement any elements of the MUDDI extended Conceptual Model. |
Normative statements | Requirement 5: /req/extended/classes-concepts Requirement 6: /req/extended/classes-associations Requirement 7: /req/extended/classes-attributes Requirement 8: /req/extended/concrete-value-types |
Guidance | The MUDDI extended conceptual models are illustrated in Figure 2 . |
Requirement 5: Specification of concepts in the extended conceptual models | |
---|---|
Identifier | /req/extended/classes-concepts |
Included in | Requirements class 2: /req/extended |
Statement | For each UML class adopted from the Extended Package to be implemented in the logical model, the logical model SHALL contain an element which represents the same concept as that defined for the UML class. |
Requirement 6: Specification of associations in the extended conceptual models | |
---|---|
Identifier | /req/extended/classes-associations |
Included in | Requirements class 2: /req/extended |
Statement | For each UML class adopted from the Extended Package to be implemented in the logical model, the logical model SHALL represent associations with the same source, target, direction, roles, and maximum multiplicities as those of the UML class. |
Requirement 7: Specification of attributes in the extended conceptual models | |
---|---|
Identifier | /req/extended/classes-attributes |
Included in | Requirements class 2: /req/extended |
Statement | For each UML class adopted from the Extended Package to be implemented in the logical model SHALL represent the attributes of the UML class including the name, definition, type, and maximum multiplicity. |
Requirement 8: Abstract value types in the extended conceptual models replaced with concrete value types | |
---|---|
Identifier | /req/extended/concrete-value-types |
Included in | Requirements class 2: /req/extended |
Statement | For each attribute specified with the AbstractValueType value type in a UML class adopted from the Extended Package, the logical model SHALL provide a concrete value type for that attribute that replaces the AbstractValueType value type. Note: This is particularly important for the geometry property where a concrete ISO_19107 geometry type needs to be assigned. |
10. Conceptual models
Note: Some of the inheritance relationships stated in the tables in this section go across the Core and Extended models. This means that some of the features classes listed in ‘generalization of’ in section 10.1 are part of the Extended Conceptual level. These feature classes are shown in Figure 2 and described in section 10.2.
10.1. Core Conceptual Model package
10.1.1. Core Conceptual Model overview
Figure 1 — Core Conceptual Model
10.1.2. Defining tables
Table 1 — Elements of “Core Conceptual Model::AbstractValueType” (Type)
Name: | AbstractValueType | ||||||
---|---|---|---|---|---|---|---|
Definition: | An abstract class used to represent an undetermined value type at the conceptual model level. Realization of attributes that accept values of this class should instead use a concrete value type. | ||||||
Stereotype: | Type | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 2 — Elements of “Core Conceptual Model::LogicalName” (model document)
Name: | LogicalName | ||||||
---|---|---|---|---|---|---|---|
Definition: | Mapping table for mapping entity / attribute names from target logical models back to those names used in the conceptual model. Implementing and completing this table is a requirement for target MUDDI logical models | ||||||
Stereotype: | model document | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | Name | Definition | Derived | Obligation | Maximum occurrence | Data type | |
conceptName | M | 1 | AbstractValueType | ||||
logicalName | M | 1 | AbstractValueType | ||||
parentConceptName | M | 1 | AbstractValueType | ||||
parentLogicalName | M | 1 | AbstractValueType | ||||
defaultSymbol | M | 1 | AbstractValueType | ||||
implementationName | M | 1 | AbstractValueType | ||||
Constraints: | (none) |
Table 3 — Elements of “Core Conceptual Model::MUDDIAsset” (FeatureType)
Name: | MUDDIAsset | ||||||
---|---|---|---|---|---|---|---|
Definition: | The parent class of built environment infrastructure that can be located, owned, operated, oriented, and consists of physical building material such as metal, plastic, or concrete. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIObject | ||||||
Generalization of: | NetworkAsset, Network, Structure | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | Name | Definition | Derived | Obligation | Maximum occurrence | Data type | |
assetOwnerID | Characteristic attribute of MUDDIAsset that identifies the present legal asset owner. Identifier maintenance and dereference mechanisms are implementation dependent. | M | 1 | AbstractValueType | |||
Constraints: | (none) |
Table 4 — Elements of “Core Conceptual Model::MUDDIEvent” (FeatureType)
Name: | MUDDIEvent | ||||||
---|---|---|---|---|---|---|---|
Definition: | The parent class of events (activities or tasks that take place in specific locations and time intervals with defined procedures and results) such as observations (e.g. surveys, inspections) of the real underground world, or executed updates such as changes to asset status. Typically an event also leads to a change / update to one or more attributes of a MUDDIobject such as dimensional parameters. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIObject | ||||||
Generalization of: | Observation, Action, Denotation | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | Name | Definition | Derived | Obligation | Maximum occurrence | Data type | |
targetObject | M | 1 | AbstractValueType | ||||
targetProperty | M | 1 | AbstractValueType | ||||
validTime | Characteristic attribute of MUDDIEvent that represents the time interval during or instance at which the result of the event is valid. Usually but not always this is the same as or begins with the event occurrence. | M | 1 | AbstractValueType | |||
Constraints: | (none) |
Table 5 — Elements of “Core Conceptual Model::MUDDIObject” (FeatureType)
Name: | MUDDIObject | ||||||
---|---|---|---|---|---|---|---|
Definition: | The root class in MUDDI of underground infrastructure, space, event, environmental unit, or other underground +/- surface features that are identified, located, typed, and about which data is maintained. | ||||||
Stereotype: | FeatureType | ||||||
Generalization of: | MUDDIEvent, MUDDIEnvironmentUnit, MUDDISpace, MUDDIAsset | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | Name | Definition | Derived | Obligation | Maximum occurrence | Data type | |
objectID | Characteristic attribute of MUDDIObject, providing a persistent, unique identifier of the real world object represented by a MUDDIObject instance. Identifier maintenance and dereference mechanisms are implementation dependent but preference will be for global uniqueness. | M | 1 | AbstractValueType | |||
recordID | Characteristic attribute of MUDDIObject, providing a persistent, unique identifier of the MUDDIObject object instance in a dataset or data product. Identifier maintenance and dereference mechanisms are implementation dependent but preference will be for global uniqueness. | M | 1 | AbstractValueType | |||
sf_geometry | Abstract spatial representation and geolocation attribute of a feature entity in conformance with ISO 19107 and OGC Simple Features. | C | n | AbstractValueType | |||
systemID | Characteristic attribute of MUDDIObject, providing a unique identifier of the MUDDIObject object instance assigned by the system that manages it. Identifier maintenance, persistence, and dereference mechanisms are system dependent but preference will be for global uniqueness. | M | 1 | AbstractValueType | |||
Constraints: | (none) |
Table 6 — Elements of “Core Conceptual Model::MUDDISpace” (FeatureType)
Name: | MUDDISpace | ||||||
---|---|---|---|---|---|---|---|
Definition: | The parent class of defined regions of space, typically represented by 2D polygon geometries, comprising the ground surface and/or underlying subsurface. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIObject | ||||||
Generalization of: | PlanningArea, Site, ServiceArea | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | Name | Definition | Derived | Obligation | Maximum occurrence | Data type | |
extent | Characteristic attribute of MUDDISpace representing the typically 2D extent of each instance. | M | 1 | AbstractValueType | |||
Constraints: | (none) |
Table 7 — Elements of “Core Conceptual Model::Network” (FeatureType)
Name: | Network | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of MUDDIAsset representing the collection of network components comprising one network, which may be a subnetwork or subordinate network to another network. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIAsset | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | Name | Definition | Derived | Obligation | Maximum occurrence | Data type | |
commodityType | Characteristic attribute of Network that indicates the commodity being distributed by that Network instance. | M | 1 | AbstractValueType | |||
Constraints: | (none) |
Table 8 — Elements of “Core Conceptual Model::NetworkAccessory” (FeatureType)
Name: | NetworkAccessory | ||||||
---|---|---|---|---|---|---|---|
Definition: | The parent class of network accessories that play a supporting role for NetworkConveyances. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | NetworkAsset | ||||||
Generalization of: | Support, Container, Protection, Sensor, Access | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 9 — Elements of “Core Conceptual Model::NetworkAsset” (FeatureType)
Name: | NetworkAsset | ||||||
---|---|---|---|---|---|---|---|
Definition: | The parent class of network assets and components. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIAsset | ||||||
Generalization of: | NetworkAccessory, NetworkConveyance | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | Name | Definition | Derived | Obligation | Maximum occurrence | Data type | |
utilityType | Characteristic attribute of NetworkAsset that indicates the type of utility it forms a part of or commodity that it distributes. | M | 1 | AbstractValueType | |||
Constraints: | (none) |
Table 10 — Elements of “Core Conceptual Model::NetworkConveyance” (FeatureType)
Name: | NetworkConveyance | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of MUDDIAsset that participates directly in conveying a commodity. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | NetworkAsset | ||||||
Generalization of: | NetworkLink, NetworkNode | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 11 — Elements of “Core Conceptual Model::NetworkLink” (FeatureType)
Name: | NetworkLink | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of NetworkConveyance that forms a conveyance channel between two NetworkNodes. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | NetworkConveyance | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 12 — Elements of “Core Conceptual Model::NetworkNode” (FeatureType)
Name: | NetworkNode | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of NetworkConveyance that serves as a junction and connects two or more NetworkNodes to each other. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | NetworkConveyance | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
10.2. Extended Conceptual Model package
10.2.1. Extended Conceptual Model overview
Figure 2 — MUDDI Extended Conceptual Model
The key components of the MUDDI Conceptual Model are displayed in this diagram.
10.2.2. Defining tables
Table 13 — Elements of “Extended Conceptual Model::Access” (FeatureType)
Name: | Access | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of NetworkAccessory that provides access to NetworkConveyances. This is generally an asset that connects the subsurface to the surface, such as a manhole. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | NetworkAccessory | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 14 — Elements of “Extended Conceptual Model::Action” (FeatureType)
Name: | Action | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of MUDDIEvent representing a task or other action such as a repair or calibration. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIEvent | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 15 — Elements of “Extended Conceptual Model::ChemicalUnit” (FeatureType)
Name: | ChemicalUnit | ||||||
---|---|---|---|---|---|---|---|
Definition: | Environmental unit pertaining to chemical properties of subsurface materials. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIEnvironmentUnit | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 16 — Elements of “Extended Conceptual Model::Container” (FeatureType)
Name: | Container | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of NetworkAccessory that contains one or more NetworkConveyances. As a MUDDIobject, a Container may also contain other containers (e.g. nested ducts) or other NetworkAccessories, etc. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | NetworkAccessory | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 17 — Elements of “Extended Conceptual Model::Denotation” (FeatureType)
Name: | Denotation | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of MUDDIEvent representing the assigning of a particular value to a feature property, such as a status or sensitivity property. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIEvent | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 18 — Elements of “Extended Conceptual Model::GeologicUnit” (FeatureType)
Name: | GeologicUnit | ||||||
---|---|---|---|---|---|---|---|
Definition: | Environmental unit pertaining to geological characterizations of subsurface materials. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIEnvironmentUnit | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 19 — Elements of “Extended Conceptual Model::GeotechUnit” (FeatureType)
Name: | GeotechUnit | ||||||
---|---|---|---|---|---|---|---|
Definition: | Environmental unit pertaining to geotechnical properties of subsurface materials. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIEnvironmentUnit | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 20 — Elements of “Extended Conceptual Model::HydroUnit” (FeatureType)
Name: | HydroUnit | ||||||
---|---|---|---|---|---|---|---|
Definition: | Environmental unit pertaining to hydrological and/or hydrogeological characteristics of subsurface materials. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIEnvironmentUnit | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 21 — Elements of “Extended Conceptual Model::MUDDIEnvironmentUnit” (FeatureType)
Name: | MUDDIEnvironmentUnit | ||||||
---|---|---|---|---|---|---|---|
Definition: | The parent class of environmental units which represent regions of the subsurface exclusive of built assets. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIObject | ||||||
Generalization of: | GeotechUnit, ChemicalUnit, HydroUnit, GeologicUnit | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | Name | Definition | Derived | Obligation | Maximum occurrence | Data type | |
boundary | Characteristic attribute of MUDDIEnvironmentalUnit that represents the boundary in 2 or 3 dimensions delimiting each unit instance. | M | 1 | AbstractValueType | |||
Constraints: | (none) |
Table 22 — Elements of “Extended Conceptual Model::Observation” (FeatureType)
Name: | Observation | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of MUDDIEvent representing an observation of phenomena leading to estimation of the value of an observableProperty of some FeatureOfInterest. This concept should also be used / extended if there is a need to track annotations or other documentary evidence. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIEvent | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 23 — Elements of “Extended Conceptual Model::PlanningArea” (FeatureType)
Name: | PlanningArea | ||||||
---|---|---|---|---|---|---|---|
Definition: | Represents the location and extent of region subject to specific policies, restrictions, and/or planning considerations. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDISpace | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 24 — Elements of “Extended Conceptual Model::Protection” (FeatureType)
Name: | Protection | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of NetworkAccessory that provides protection such as cathodic protection to NetworkConveyances. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | NetworkAccessory | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 25 — Elements of “Extended Conceptual Model::Sensor” (FeatureType)
Name: | Sensor | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of NetworkAccessory comprising sensors or other ObservableProperty estimators. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | NetworkAccessory | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 26 — Elements of “Extended Conceptual Model::ServiceArea” (FeatureType)
Name: | ServiceArea | ||||||
---|---|---|---|---|---|---|---|
Definition: | Represents the typically 2D extent that is serviced by a particular network / subnetwork / subordinate network | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDISpace | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 27 — Elements of “Extended Conceptual Model::Site” (FeatureType)
Name: | Site | ||||||
---|---|---|---|---|---|---|---|
Definition: | Represents the location and extent of a facility that is part of a network. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDISpace | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Table 28 — Elements of “Extended Conceptual Model::Structure” (FeatureType)
Name: | Structure | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of built environment infrastructure that is not directly connected to a network but serves some structural role. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | MUDDIAsset | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | Name | Definition | Derived | Obligation | Maximum occurrence | Data type | |
role | Characteristic attribute of Structure that indicates its role in the built environment such as basement. | M | 1 | AbstractValueType | |||
Constraints: | (none) |
Table 29 — Elements of “Extended Conceptual Model::Support” (FeatureType)
Name: | Support | ||||||
---|---|---|---|---|---|---|---|
Definition: | Type of NetworkAccessory that provides physical support to NetworkConveyances. | ||||||
Stereotype: | FeatureType | ||||||
Inheritance from: | NetworkAccessory | ||||||
Abstract: | True | ||||||
Associations: | (none) | ||||||
Public attributes: | (none) | ||||||
Constraints: | (none) |
Annex A
(normative)
Abstract test suite
A.1. General
This clause specifies the conformance classes and conformance tests for the conceptual model.
A.2. Conformance test suite of the Core conceptual model
Conformance class A.1: Testing the logical implementation of the Core conceptual model | |
---|---|
Identifier | /conf/core |
Subject | Logical model |
Requirements class | Requirements class 1: /req/core |
Description | Test whether the logical model implementation fully implements the MUDDI Core conceptual model. |
Conformance tests | Abstract test A.1: /conf/core/classes-concepts Abstract test A.2: /conf/core/classes-associations Abstract test A.3: /conf/core/classes-attributes Abstract test A.4: /conf/core/concrete-value-types |
Abstract test A.1: Testing logical model concepts from core conceptual models | |
---|---|
Identifier | /conf/core/classes-concepts |
Requirement | Requirement 1: /req/core/classes-concepts |
Test purpose | To validate that the logical model correctly implements all UML classes defined or referenced in the Core Package. |
Test-method-type | Manual Inspection |
Description | Validate that the logical model contains a data element which represents the same concept as that defined for the UML class. |
Abstract test A.2: Testing logical model associations from core conceptual models | |
---|---|
Identifier | /conf/core/classes-associations |
Requirement | Requirement 2: /req/core/classes-associations |
Test purpose | To validate that the logical model correctly implements all UML associations defined or referenced in the Core Package. |
Test-method-type | Manual Inspection |
Description | Validate that all UML associations in the Core package UML models are represented in the logical model. Validate that those relationships have the same source, target, direction, roles, and multiplicities as those documented in the Core package. |
Abstract test A.3: Testing logical model attributes from core conceptual models | |
---|---|
Identifier | /conf/core/classes-attributes |
Requirement | Requirement 3: /req/core/classes-attributes |
Test purpose | To validate that the logical model correctly implements all UML attributes defined or referenced in the Core Package. |
Test-method-type | Manual Inspection |
Description | Validate that all attributes of UML models from the Core package are represented in the logical model. Validate that those attributes have the same name (or mapped name recorded in class LogicalName), definition and type as specified by the Core package. |
Abstract test A.4: Testing whether abstract value types in the core conceptual models are replaced with concrete value types | |
---|---|
Identifier | /conf/core/concrete-value-types |
Requirement | Requirement 4: /req/core/concrete-value-types |
Test purpose | To validate that the logical model correctly provides concrete value types for all UML attributes that are assigned the AbstractValueType value class. |
Test-method-type | Manual Inspection |
Description | Validate that all attributes of UML models from the Core package that utilize AbstractValueType are represented in the logical model with a concrete value type. Validate that there is no usage of the AbstractValueType class in the logical model. |
A.3. Conformance test suite for the extended conceptual models
The logical model may decide on which UML classes in the extended conceptual models to implement on an as needed basis.
In the Extended requirements class, there are no mandatory UML classes.
Therefore by default, if the minimum obligation in a relationship to a UML class is zero, then that UML class does not have to be implemented.
Conformance class A.2: Testing the logical implementation of extended conceptual models | |
---|---|
Identifier | /conf/extended |
Subject | Logical model |
Requirements class | Requirements class 2: /req/extended |
Description | Test whether the logical model implementation of any of the MUDDI extended conceptual model elements conform to the specification in the MUDDI CM UML model. |
Conformance tests | Abstract test A.5: /conf/extended/classes-concepts Abstract test A.7: /conf/extended/classes-associations Abstract test A.6: /conf/extended/classes-attributes Abstract test A.8: /conf/extended/concrete-value-types |
Abstract test A.5: Testing logical model concepts from the extended conceptual models | |
---|---|
Identifier | /conf/extended/classes-concepts |
Requirement | Requirement 5: /req/extended/classes-concepts |
Test purpose | To validate that the logical model correctly implements the UML classes defined or referenced in the Extended Package. |
Test-method-type | Manual Inspection |
Description | Validate that for every UML class adopted from the Extended Package in the logical model, the logical model contains an element which represents the same concept as that defined for the UML class. |
Abstract test A.6: Testing logical model attributes from the extended conceptual models | |
---|---|
Identifier | /conf/extended/classes-attributes |
Requirement | Requirement 7: /req/extended/classes-attributes |
Test purpose | To validate that the logical model correctly implements all attributes from the adopted UML classes defined or referenced in the Extended Package. |
Test-method-type | Manual Inspection |
Description | Validate that all attributes of UML models adopted from the Extended package are implemented in the logical model. Validate that those attributes have the same name (or mapped name recorded in class LogicalName), definition and type as specified by the Extended package. |
Abstract test A.7: Testing logical model associations from the extended conceptual models | |
---|---|
Identifier | /conf/extended/classes-associations |
Requirement | Requirement 6: /req/extended/classes-associations |
Test purpose | To validate that the logical model correctly implements the adopted UML associations defined or referenced in the Extended Package. |
Test-method-type | Manual Inspection |
Description | Validate that all adopted UML associations from the Extended package are represented in the logical model. Validate that those relationships have the same source, target, direction, roles, and multiplicities as those documented in the Extended package. |
Abstract test A.8: Testing whether abstract value types in the extended conceptual models are replaced with concrete value types | |
---|---|
Identifier | /conf/extended/concrete-value-types |
Requirement | Requirement 8: /req/extended/concrete-value-types |
Test purpose | To validate that the logical model correctly provides concrete value types for all UML attributes that are assigned the AbstractValueType value class. |
Test-method-type | Manual Inspection |
Description | Validate that all attributes of UML models adopted from the Extended package that utilize AbstractValueType are represented in the logical model with a concrete value type. Validate that there is no usage of the AbstractValueType class in the logical model. |
Bibliography
[1] Josh Lieberman: OGC 17-090r1, Model for Underground Data Definition and Integration (MUDDI) Engineering Report. Open Geospatial Consortium (2019). http://www.opengis.net/doc/PER/MUDDI-ER.
[2] Ronald Tse, Nick Nicholas: OGC 21-035r1, OGC Testbed-17: Model-Driven Standards Engineering Report. Open Geospatial Consortium (2022). http://www.opengis.net/doc/PER/t17-D022.
[3] Josh Lieberman, Andy Ryan: OGC 17-048, OGC Underground Infrastructure Concept Study Engineering Report. Open Geospatial Consortium (2017). http://www.opengis.net/doc/PER/uicds.