Informatievlaanderen / OSLOthema-Waterkwaliteit

1 stars 1 forks source link

definitie van https://data.vlaanderen.be/doc/applicatieprofiel/waterkwaliteit/#Maat is fout #14

Open gezever opened 1 year ago

gezever commented 1 year ago

In de definitie is property maat gemapt op http://def.isotc211.org/iso19103/2005/UnitsOfMeasure#Measure.value, met range https://data.vlaanderen.be/doc/applicatieprofiel/waterkwaliteit/#KwantitatieveWaarde

Echter:

value http://standards.iso.org/iso/19103/ed-1/en/
gezever commented 1 year ago

Maat =

Measure The result from performing the act or process of ascertaining the extent, dimensions, or quantity of some entity.A measure is always associated to a unit of measure. Ratio measures where the two base measures are in the same units (often considered unit-less) should be associated to UnitOfMeasure (same meter.sl.meter for map scale) so that conversions to non-unitless ratios can be accomplished (such as miles.sl.inch). http://standards.iso.org/iso/19103/ed-1/en/ 1 1
gezever commented 1 year ago

zie ook https://github.com/Informatievlaanderen/OSLOthema-Waterkwaliteit/issues/6

GeertThijs commented 1 year ago

Terecht opgemerkt, dit was tijdelijke oplossing die nu permanent dreigt te worden. In feite is dit wat ISO19103 voorschrijft: image Bedoeling was eigenlijk om het begrip ISO:Measure te behouden maar dan met de invulling van schema:QuantitativeValue omdat die ook QuantiativeValue.unitCode heeft naast unitText. ISO:UnitOfMeasure.uomIdentifier is sowieso een String en dit is beperkend als we bvb naar instanties van qudt:Unit willen verwijzen. Echter:

Graag een voorstel van oplossing.

gezever commented 1 year ago

Dag Geert, In mijn mapping oefening leek me dit soort instance zinvol en eenvoudig: { "@graph": [ { "@id": "observatie:1", "waterkwaliteit:chemischAgensVracht": { "@id": "vracht:1" }, "waterkwaliteit:agens": { "@id": "substantie:CID23994" }, "@type": "waterkwaliteit:ChemischAgensVrachtObservatie" }, { "@id": "vracht:1", "isotc211:Measure.value": { "@value": "320.1709", "@type": "http://www.w3.org/2001/XMLSchema#decimal" }, "isotc211:Measure.uom": { "@id": "eenheid:kg_per_jaar" }, "@type": "isotc211:Measure" } ], "@context": { "substantie": "https://data.imjv.omgeving.vlaanderen.be/id/concept/substantie/", "observatie": "https://data.imjv.omgeving.vlaanderen.be/id/observatie/", "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "vracht": "https://data.imjv.omgeving.vlaanderen.be/.well-known/genid/vracht/", "sdmx": "http://purl.org/linked-data/sdmx/2009/attribute#", "skos": "http://www.w3.org/2004/02/skos/core#", "iso19156": "http://def.isotc211.org/iso19156/2011/Observation#", "rdfs": "http://www.w3.org/2000/01/rdf-schema#", "eenheid": "https://data.imjv.omgeving.vlaanderen.be/id/concept/eenheid/", "isotc211": "http://def.isotc211.org/iso19103/2005/UnitsOfMeasure#", "waterkwaliteit": "https://data.vlaanderen.be/ns/waterkwaliteit#" } }

https://data.vlaanderen.be/doc/applicatieprofiel/waterkwaliteit/#Maat is gelijk aan http://def.isotc211.org/iso19103/2005/UnitsOfMeasure#Measure , die klasse heeft dus gewoon twee properties isotc211:Measure.value en isotc211:Measure.uom in turtle is die instance: vracht:1 rdf:type isotc211:Measure ; isotc211:Measure.uom eenheid:kg_per_jaar ; isotc211:Measure.value 320.1709 .

gezever commented 1 year ago

@prefix observatie: https://data.imjv.omgeving.vlaanderen.be/id/observatie/ . @prefix iso19156: http://def.isotc211.org/iso19156/2011/Observation# . @prefix isotc211: http://def.isotc211.org/iso19103/2005/UnitsOfMeasure# . @prefix substantie: https://data.imjv.omgeving.vlaanderen.be/id/concept/substantie/ . @prefix eenheid: https://data.imjv.omgeving.vlaanderen.be/id/concept/eenheid/ . @prefix rdfs: http://www.w3.org/2000/01/rdf-schema# . @prefix sdmx: http://purl.org/linked-data/sdmx/2009/attribute# . @prefix skos: http://www.w3.org/2004/02/skos/core# . @prefix waterkwaliteit: https://data.vlaanderen.be/ns/waterkwaliteit# . @prefix rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# . @prefix vracht: https://data.imjv.omgeving.vlaanderen.be/.well-known/genid/vracht/ .

observatie:1 rdf:type waterkwaliteit:ChemischAgensVrachtObservatie ; waterkwaliteit:agens substantie:CID23994 ; waterkwaliteit:chemischAgensVracht vracht:1 .

vracht:1 rdf:type isotc211:Measure ; isotc211:Measure.uom eenheid:kg_per_jaar ; isotc211:Measure.value 320.1709 .

GeertThijs commented 1 year ago

Merci, tof dat iemand echt meedenkt. De range van isotc211:Measure.uom is wel isotc211:UnitOfMeasure en niet skos:Concept. Of is dat geen bezwaar? UnitOfMeasure heeft bovendien een verplicht attribuut uomIdentifier vh type String. Dus volgens isotc211 moet het eerder iets zijn als: image Ipv: image Met als nadeel dat dit 1) weeral complexer is, 2) de string eigenlijk een uri is.

GeertThijs commented 1 year ago

Sowieso moeten ook dingen kunnen als: image Waarbij de eenheid een instantie is van een qudt:Unit. (OPMERKING: dit is wel een mockup, qudt heeft oa KiloGM-PER-DAY maar niet -PER-YEAR.)

gezever commented 1 year ago

@GeertThijs Ik ben nogal tegen het gebruik van blank nodes voor die units, voor een instance van Measure kan ik nog leven met een skolem, units moeten in een lijst. Blank nodes is gewoon miserie, in construct queries krijg je bv. meerdere resultaten terug.

Je hebt helemaal gelijk dat de range van isotc211:Measure.uom geen skos concept is Als ik het goed begrijp is het nog ingewikkelder. isotc211:UnitOfMeasure.measureType heeft ook kardinaliteit 1.

Het zou er eerder zo uit zien { "@graph": [ { "@id": "mt:weight", "@type": [ "skos:Concept", "isotc211:MeasureType" ] }, { "@id": "isotc211:MeasureType", "rdfs:subClassOf": { "@id": "skos:Concept" } }, { "@id": "observatie:1", "waterkwaliteit:chemischAgensVracht": { "@id": "vracht:1" }, "waterkwaliteit:agens": { "@id": "substantie:CID23994" }, "@type": "waterkwaliteit:ChemischAgensVrachtObservatie" }, { "@id": "vracht:1", "isotc211:Measure.value": { "@value": "320.1709", "@type": "http://www.w3.org/2001/XMLSchema#decimal" }, "isotc211:Measure.uom": { "@id": "eenheid:kg_per_jaar" }, "@type": "isotc211:Measure" }, { "@id": "eenheid:kg_per_jaar", "isotc211:UnitOfMeasure.measureType": { "@id": "mt:weight" }, "isotc211:UnitOfMeasure.uomSymbol": "kg", "isotc211:UnitOfMeasure.uomName": "kilogram", "@type": "isotc211:UnitOfMeasure" }, { "@id": "http://def.isotc211.org/iso19103/2005/UnitsOfMeasure/code/MeasureType", "dct:isFormatOf": { "@id": "isotc211:MeasureType" }, "@type": "skos:ConceptScheme" } ], "@context": { "substantie": "https://data.imjv.omgeving.vlaanderen.be/id/concept/substantie/", "observatie": "https://data.imjv.omgeving.vlaanderen.be/id/observatie/", "vracht": "https://data.imjv.omgeving.vlaanderen.be/.well-known/genid/vracht/", "mt": "http://def.isotc211.org/iso19103/2005/UnitsOfMeasure/code/MeasureType/", "sdmx": "http://purl.org/linked-data/sdmx/2009/attribute#", "skos": "http://www.w3.org/2004/02/skos/core#", "rdfs": "http://www.w3.org/2000/01/rdf-schema#", "eenheid": "https://data.imjv.omgeving.vlaanderen.be/id/concept/eenheid/", "mts": "http://def.isotc211.org/iso19103/2005/UnitsOfMeasure/code/MeasureType", "waterkwaliteit": "https://data.vlaanderen.be/ns/waterkwaliteit#", "dct": "http://purl.org/dc/terms/", "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "iso19156": "http://def.isotc211.org/iso19156/2011/Observation#", "isotc211": "http://def.isotc211.org/iso19103/2005/UnitsOfMeasure#" } }

Ik ben aan het puzzelen in https://def.isotc211.org/iso19103/2005/UnitsOfMeasure.rdf ,op zoek naar een mogelijk gebruik van http://def.isotc211.org/iso19103/2005/UnitsOfMeasure/code/StandardUnits/kilogram, maar voorlopig is me dat een raadsel .

gezever commented 1 year ago

De opmerking van die qudt eenheden komt overeen met wat ik had gemapt, rechtstreeks naar een concept van een eenheid. Persoonlijk vind ik dat elegant en restrictief genoeg, twee properties in een Waarde, een rdf:value met een xsd:decimal als range en een unit met een skos:Concept of een http://qudt.org/schema/qudt/Unit als range.

GeertThijs commented 1 year ago

Hierover dit:

Makkelijkste oplossing zou nog zijn om een Measure te laten overerven van QuantitativeValue in de diagrammen, evt met een redefine om het wat strikter te maken.

GeertThijs commented 9 months ago

Hierover dit:

GeertThijs commented 9 months ago

Zie dit ook bijgevoegde nota met een overzicht van de mogelijkheden en een nota met datavoorbeelden.

GeertThijs commented 9 months ago

Maat is nu zoals in de AP's Observaties en Metingen en Sensoren en Bemonstering, ttz er is geen tussenliggend attribuut meer en de gebruiksnota is aangepast.