180 likes | 282 Views
Beyond data models (what we can do with vocabularies/ontologies alone). David Leal david.leal@caesarsystems.co.uk. Semantic Web technologies. RDF (Resource Description Framework) making statements on the Web http://www.w3.org/RDF/ N3 (Notation 3)
E N D
Beyond data models(what we can do with vocabularies/ontologies alone) David Leal david.leal@caesarsystems.co.uk
Semantic Web technologies • RDF (Resource Description Framework) • making statements on the Web • http://www.w3.org/RDF/ • N3 (Notation 3) • a simple way of writing down an RDF statement • http://www.w3.org/DesignIssues/Notation3.html A opportunity to: • record information more simply • enable others to use our concepts • use the concepts of others
believes Jane N3 :Janet :loves :John . Getting started RDF diagram John Janet loves :Jane :believes { }
identify the people identify the human relationships Getting started namespaces @prefix people: http://www.friends-are-us.com/registry/ . @prefix relationships: http://www.institute-of_relationships/vocabulary/ . people:Janet relationship:loves people:John .
This is what the EXPRESS data model + part 21 / 28 file methodology achieves. What we do well • Blobs • Encapsulate the data that defines the shape • Encapsulate the data that is the specification of the part. • Encapulate the data that is the specification of the analysis. • The data inside the blob and the data outside the blob are separate – what is inside can be specified in a contract. • It is “data push” – I tell you what you need to know. The blob can be an e-mail attachment – it can be downloaded by FTP.
This is why we have different types of blob – AP 203, AP209, AP210, AP214, … When iswhat we do welluseful? • Command driven processes • I tell you what to do, and what you need to know to do it. • Processes where the data within the blob can be easily defined • Shape information is our success story – it has a well defined scope • Engineering analysis has not taken off – the scope is fuzzy and much larger • Processes where the blob has a particular destination system • CAD, CAE, CAM, PDM You need to know the type of destination system is before selecting the type of the blob.
The Semantic Web provides a technology which can cope with this. What we cannot do yet • Enable a user to publish data on the Web – where the user makes his or her own decision about what data are published • Somebody else can use the data, if they want to. • Enable a user to use SC4 standards for some data and other standards for other data • There cannot be two-way links between objects in a blob defined by a STEP AP and an IFC or OpenGIS object • All we can do is make external references by “magic strings” • Enable groups of users to extent SC4 standards as they wish • All we can do is allow user defined “magic strings” In the real world, data is defined using many different vocabularies – the SC4 vocabulary is one of many.
@prefix part: http://www.tc-184-sc4.org/10303/-1234/tech/vocabulary/ . URI of a design URI of a batch of material URI of an individual part URI of a vocabulary about parts Tracking back materials information @prefix item: http://www.fred.bloggs.com/items . @prefix model: http://www.fred.bloggs.com/models . @prefix alcoa: http://www.alcoa.com/batches . item:98-1234 part:toDesign model:ABC456_v3 ; part:madeFromBatch alcoa:PQR-12345-06 .
a classification with respect to a standard the actual manufacturing process a vocabulary for manufacturing processes – perhaps not ISO 10303 Tracking back materials information item:98-1234 part:toDesign model:ABC456_v3 ; part:madeFromBatch alcoa:PQR-12345-06 . alcoa:PQR-12345-06 mat:materialProductType mil5:XYZ2048-asSheet ; mat:manufacturingProcess alcoa:LineA-2006-02-13 .
facility that performed the process more manufacturing vocabulary other ISO committees work on time generic work flow vocabulary Tracking back materials information item:98-1234 part:toDesign model:ABC456_v3 ; part:madeFromBatch alcoa:PQR-12345-06 . alcoa:PQR-12345-06 mat:materialProductType mil5:XYZ2048-asSheet ; mat:manufacturingProcess alcoa:LineA-2006-02-13 . alcoa:LineA-2006-02-13 mat:performedBy alcoa:LineA ; act:startTime [ iso8601:utc “2006-02-12T09:00” ] ; act:endTime [ iso8601:utc “2006-02-12T17:00” ] .
a standard specimen type a use of our vocabulary in a different environment Our vocabularies cannot be re-used by others – our data models cannot be Tracking back materials information item:98-1234 part:toDesign model:ABC456_v3 ; part:madeFromBatch alcoa:PQR-12345-06 . alcoa:PQR-12345-06 mat:materialProductType mil5:XYZ2048-asSheet ; mat:manufacturingProcess alcoa:LineA-2006-02-13 . alcoa:LineA-2006-02-13 mat:performedBy alcoa:LineA ; act:startTime [ iso8601:utc “2006-02-12T09:00” ] ; act:endTime [ iso8601:utc “2006-02-12T17:00” ] . alcoa:specimen-67890 part:madeFromBatch alcoa:PQR-12345-06 ; part:toDesign test:SpecimenTypeXYZ .
more generic workflow vocabulary a standard test method a generic measurement and observations vocabulary Tracking back materials information item:98-1234 part:toDesign model:ABC456_v3 ; part:madeFromBatch alcoa:PQR-12345-06 . alcoa:PQR-12345-06 mat:materialProductType mil5:XYZ2048-asSheet ; mat:manufacturingProcess alcoa:LineA-2006-02-13 . alcoa:LineA-2006-02-13 mat:performedBy alcoa:LineA ; act:startTime [ iso8601:utc “2006-02-12T09:00” ] ; act:endTime [ iso8601:utc “2006-02-12T17:00” ] . alcoa:specimen-67890 part:madeFromBatch alcoa:PQR-12345-06 ; part:toDesign test:SpecimenTypeXYZ . alcoa:Test-67890 obs:onSpecimen alcoa:specimen-67890 ; act:toProcedure test:MaterialTestTypePQR ; obs:givesResult alcoa:Result-67890 .
a statement with provenance Tracking back materials information item:98-1234 part:toDesign model:ABC456_v3 ; part:madeFromBatch alcoa:PQR-12345-06 . alcoa:PQR-12345-06 mat:materialProductType mil5:XYZ2048-asSheet ; mat:manufacturingProcess alcoa:LineA-2006-02-13 . alcoa:LineA-2006-02-13 mat:performedBy alcoa:LineA ; act:startTime [ iso8601:utc “2006-02-12T09:00” ] ; act:endTime [ iso8601:utc “2006-02-12T17:00” ] . alcoa:specimen-67890 part:madeFromBatch alcoa:PQR-12345-06 ; part:toDesign test:SpecimenTypeXYZ . alcoa:Test-67890 obs:onSpecimen alcoa:specimen-67890 ; act:toProcedure test:MaterialTestTypePQR ; obs:givesResult alcoa:Result-67890 . alcoa:Result-67890 { alcoa:specimen-67890 mat:compressiveYieldStress [ iso:MPA “201.3” ] }
Many vocabularies – only a few are within the scope of SC4 personnel observations inventory workflow material test units material handbook product design GIS electrical networks manufacture earth sciences maintain life cycle assessment
Data models • Data models are good • they specify exactly what data should be supplied for a particular activity • they have constraints to ensure that the data is complete and correct • But • different activities need different data • different activities have different ideas about what “complete” means • So • There are lots of similar but overlapping data models
Vocabularies/ontologies • Vocabularies/ontologies are good • precise statements can be made about things • different vocabularies can be used together to say what you want • But • there is no constraint on what is said • you may not say all that needs to be said • So • vocabularies are not enough to specify the data flow between activities • replacing data models with vocabularies + rules is a research activity
What next • We need vocabularies/ontologies as well as data models • cannot be generated automatically from out EXPRESS schemas • people have to read the words • real work – but if we don’t do it others will duplicate what we have done • We need to address the type of business problem for which a data model is not the solution, but a standard vocabulary is • Other standards committees have similar problems • data models in UML, or XML Schema • electrical networks • GIS • building and construction • materials information, • earth sciences
Concretely • Make a start with vocabularies corresponding to ISO 10303 module ARMs • Publish as a TS • “Gellish” (proposal from the Netherlands) is a possible addition to this vocabulary • Look at vocabularies from other standards • Agree owl:sameAs statements – a “same as” is a success! • Find who’s vocabularies we can use, and do more in that area. If two data models overlap it is a problem – which do you use? If two vocabularies overlap it is a success – you have synonyms