Skip to content
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

Generate BhML schema #49

Open
sgrellet opened this issue Jul 22, 2019 · 10 comments
Open

Generate BhML schema #49

sgrellet opened this issue Jul 22, 2019 · 10 comments
Assignees
Labels
Core BhML Core

Comments

@sgrellet
Copy link
Member

Everything ‘feature’
Appart from BoreholeReferencingMethod (DataType)
BoreholeEventLocation -> Abstract

@sgrellet sgrellet self-assigned this Jul 22, 2019
@sgrellet
Copy link
Member Author

@sgrellet
Copy link
Member Author

sgrellet commented Aug 2, 2019

xsd updated in 0.2 according to webconf 27 and #46

@sgrellet sgrellet reopened this Aug 2, 2019
@bsimons14
Copy link
Collaborator

Some suggested changes to the UML and XML for the BoreholeLRS class based on looking at the instance examples:

  1. BoreholeLRS/accuracyStatement and BoreholeLRS/precisionStatement
    These should be byReference only allowing xlink:href
    e.g. <BhML:accuracyStatement xlink:href="http://www.opengis.net/def/nil/OGC/0/unknown" xlink:title="unknown"/>
  2. BoreholeReferencingMethod/unit
    This should be byReference rather than a vocabulary term from "UnitOfMeasureTerm" in order to allow xink:href for the URI, allow code and xlink:title
    e.g. <BhML:unit code="m" xlink:href="http://qudt.org/vocab/unit/M" xlink:title="Metre"/>
  3. BoreholeReferencingMethod/name
    It is not clear to me what kind of name would go here. I could understand the "TrajectoryReferent" having a name, such as "Kelly bushing", "collar", "well head" etc., but not the BoreholeReferencingMethod.

@denevers
Copy link
Contributor

denevers commented Sep 5, 2019

Also, <<Union>> are not encoded the way GeoSciML did it (which I think it's better and less verbose)

the current encoding is, for example

<AtLocation>
	<atLocation>
			<!-- this is the verbose encoding of  a union -->
			<MeasureOrEvent>
				<distanceAlong uom="http://qudt.org/vocab/unit/M">10</distanceAlong>
			</MeasureOrEvent>
	</atLocation>
</AtLocation>

forcing the union to generate a tag

while, the other encoding goes straight to

<AtLocation>
	<atLocation unionSemantic="distanceAlong"  uom="http://qudt.org/vocab/unit/M">10</atLocation>
</AtLocation>

although, we never use unionSemantic

It is discussed in GeoSciML spec

https://docs.opengeospatial.org/is/16-008/16-008.html#109

(darn, I realise there is an error in the diagram, the bottom box should be RockMaterial, not earth material)

@denevers
Copy link
Contributor

ok.. bit of a snag

This is the encoding

	<!-- ###############  Measure of Event ##################-->
	<group name="MeasureOrEvent">
		<choice>
			<element ref="BhML:BoreholeEvent"/>
			<element ref="gml:measure"/>
		</choice>
	</group>
	
		<!--  encoding from https://www.seegrid.csiro.au/wiki/AppSchemas/UmL2GMLAS#A_4._Class_association_pattern_45_target_stereotyped_42_60_62_42 -->
	<complexType name="MeasureOrEventPropertyType">
		<sequence>
			<group ref="BhML:MeasureOrEvent"/>
		</sequence>
		<attributeGroup ref="gml:AssociationAttributeGroup"/>
   		<attribute name="unionSemantics" type="BhML:MeasureOrEventUnionSemantics"/>
	</complexType>
	
<simpleType name="MeasureOrEventUnionSemantics">
   <restriction base="string">
      <enumeration value="distanceAlong"/>
      <enumeration value="boreholeEvent"/>
   </restriction>
</simpleType>

but this forces

<location>
	<AtLocation>
		<atLocation unionSemantics="distanceAlong">
		<gml:measure uom="http://qudt.org/vocab/unit/M">3.2</gml:measure>
		</atLocation>
	</AtLocation>
</location>

instead of

<atLocation uom="m">10</atLocation>

Works ok for references

<location>
	<FromToLocation>
		<fromPosition xlink:href="#sm0"/>
		<toPosition xlink:href="#qu1"/>
	</FromToLocation>
</location>

@bsimons14
Copy link
Collaborator

bsimons14 commented Sep 25, 2019 via email

@denevers
Copy link
Contributor

denevers commented Sep 25, 2019

but make sense when compared to the UML

depends of the <<Union>> encoding pattern. I would disagree for the official XSD, but for the IE, sure..

The new schemas (https://github.com/opengeospatial/boreholeie/tree/master/schemas) I pushed also fixes the xlink:href you mentionned above.. keep ?

@sgrellet
Copy link
Member Author

according to the last 2 webconf discussions. new xsd generated (0.3.0 : in 5f72028)

  • Changelog:
    • Definitions added or completed.
    • AtLocation:atLocation becomes atPosition.
    • the 3 codeLists based attributes (accuracyStatement, precisionStatement, unit) are now typed gml:ReferenceType
  • NotChangedLog:
    • +1 on Bruce point to keep Union as generated out of the box by ShapeChange

@sgrellet
Copy link
Member Author

sgrellet commented Oct 10, 2019

One point missing in the ChangeLog : namespace changed to point to https://github.com/opengeospatial/boreholeie/blob/master/schemas/BhML-Core.xsd and not to forge BRGM anymore

@sgrellet sgrellet added the Core BhML Core label Oct 28, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Core BhML Core
Projects
None yet
Development

No branches or pull requests

3 participants